diff options
| author | Chris Lattner <sabre@nondot.org> | 2007-08-30 17:51:09 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2007-08-30 17:51:09 +0000 |
| commit | 8718fcf35e1e5f48e5da7102abcce0d7a5133555 (patch) | |
| tree | 2011b10ccd267af87f8910ea62e5e537ae227475 | |
| parent | f17bd423c25d091c0b6976b19be65fa7f8722279 (diff) | |
| download | bcm5719-llvm-8718fcf35e1e5f48e5da7102abcce0d7a5133555.tar.gz bcm5719-llvm-8718fcf35e1e5f48e5da7102abcce0d7a5133555.zip | |
a new testcase
llvm-svn: 41614
| -rw-r--r-- | clang/test/Sema/offsetof.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/clang/test/Sema/offsetof.c b/clang/test/Sema/offsetof.c new file mode 100644 index 00000000000..5848ba40833 --- /dev/null +++ b/clang/test/Sema/offsetof.c @@ -0,0 +1,23 @@ +// RUN: clang -parse-ast-check %s + +#define offsetof(TYPE, MEMBER) __builtin_offsetof (TYPE, MEMBER) + +typedef struct P { int i; float f; } PT; +struct external_sun3_core +{ + unsigned c_regs; + + PT X[100]; + +}; + +void swap() +{ + int x; + x = offsetof(struct external_sun3_core, c_regs); + x = __builtin_offsetof(struct external_sun3_core, X[42].f); + + x = __builtin_offsetof(struct external_sun3_core, X[42].f2); // expected-error {{no member named 'f2'}} + x = __builtin_offsetof(int, X[42].f2); // expected-error {{offsetof requires struct}} +} + |

