xref: /llvm-project/clang/test/Frontend/macros.c (revision c6e68daac0fa6e77a89f3ca72f266a528503dd1c)
1d281a714SDaniel Dunbar // RUN: %clang_cc1 -DA= -DB=1 -verify -fsyntax-only %s
2*c6e68daaSAndy Gibbs // expected-no-diagnostics
3d281a714SDaniel Dunbar 
4d281a714SDaniel Dunbar int a[(B A) == 1 ? 1 : -1];
5d281a714SDaniel Dunbar 
66dc7e57dSChris Lattner 
76dc7e57dSChris Lattner // PR13747 - Don't warn about unused results with statement exprs in macros.
86dc7e57dSChris Lattner void stuff(int,int,int);
96dc7e57dSChris Lattner #define memset(x,y,z) ({ stuff(x,y,z); x; })
106dc7e57dSChris Lattner 
foo(int a,int b,int c)116dc7e57dSChris Lattner void foo(int a, int b, int c) {
126dc7e57dSChris Lattner   memset(a,b,c);  // No warning!
136dc7e57dSChris Lattner }
14