diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2009-04-22 19:23:09 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2009-04-22 19:23:09 +0000 |
commit | d3a5a9d7fa4922d5399de56c7ef67dbb4eb23b24 (patch) | |
tree | bc3884a0c424569b213e98eec8dc733f38f095e8 /clang/test/Sema/const-eval.c | |
parent | b985eebcdfaed7ba4ee07b411259b4a5a7549cba (diff) | |
download | bcm5719-llvm-d3a5a9d7fa4922d5399de56c7ef67dbb4eb23b24.tar.gz bcm5719-llvm-d3a5a9d7fa4922d5399de56c7ef67dbb4eb23b24.zip |
Add handling for complex->int, int->complex float, and float->complex
int. Note that constant int->complex float and float->complex int casts
were being miscompiled.
llvm-svn: 69821
Diffstat (limited to 'clang/test/Sema/const-eval.c')
-rw-r--r-- | clang/test/Sema/const-eval.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/clang/test/Sema/const-eval.c b/clang/test/Sema/const-eval.c index 08daa5f8d6e..ce1aacd2745 100644 --- a/clang/test/Sema/const-eval.c +++ b/clang/test/Sema/const-eval.c @@ -61,3 +61,5 @@ EVAL_EXPR(29, (_Complex int)1 ? 1 : -1) struct a { int x, y }; static struct a V2 = (struct a)(struct a){ 1, 2}; static const struct a V1 = (struct a){ 1, 2}; + +EVAL_EXPR(30, (int)(_Complex float)((1<<30)-1) == (1<<30) ? 1 : -1) |