diff options
| author | Eli Friedman <eli.friedman@gmail.com> | 2009-04-07 19:37:57 +0000 |
|---|---|---|
| committer | Eli Friedman <eli.friedman@gmail.com> | 2009-04-07 19:37:57 +0000 |
| commit | 574c7453702717b4ee2ecbae05786df72af2a09a (patch) | |
| tree | 70c1074be1f5ca8ab9c0c0904afcca81180d0673 /clang/test | |
| parent | 513d500fda012d6fdec63bf9d8cad245640dafe4 (diff) | |
| download | bcm5719-llvm-574c7453702717b4ee2ecbae05786df72af2a09a.tar.gz bcm5719-llvm-574c7453702717b4ee2ecbae05786df72af2a09a.zip | |
Diagnose uses of function specifiers on declarations which don't declare
functions. Fixes PR3941.
llvm-svn: 68541
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/CodeGen/alias.c | 2 | ||||
| -rw-r--r-- | clang/test/Sema/inline.c | 6 | ||||
| -rw-r--r-- | clang/test/SemaCXX/inline.cpp | 5 |
3 files changed, 12 insertions, 1 deletions
diff --git a/clang/test/CodeGen/alias.c b/clang/test/CodeGen/alias.c index c1a3baa9293..b0c71fbdfca 100644 --- a/clang/test/CodeGen/alias.c +++ b/clang/test/CodeGen/alias.c @@ -20,7 +20,7 @@ int foo() __attribute__((alias("foo1"))); // RUN: grep '@bar1 = internal global i32 42' %t -static inline int bar1 = 42; +static int bar1 = 42; int bar() __attribute__((alias("bar1"))); diff --git a/clang/test/Sema/inline.c b/clang/test/Sema/inline.c new file mode 100644 index 00000000000..adcde51363e --- /dev/null +++ b/clang/test/Sema/inline.c @@ -0,0 +1,6 @@ +// RUN: clang-cc -fsyntax-only -verify %s + +// Check that we don't allow illegal uses of inline +inline int a; // expected-error{{'inline' can only appear on functions}} +typedef inline int b; // expected-error{{'inline' can only appear on functions}} +int d(inline int a); // expected-error{{'inline' can only appear on functions}} diff --git a/clang/test/SemaCXX/inline.cpp b/clang/test/SemaCXX/inline.cpp new file mode 100644 index 00000000000..7d0505a435e --- /dev/null +++ b/clang/test/SemaCXX/inline.cpp @@ -0,0 +1,5 @@ +// RUN: clang-cc -fsyntax-only -verify %s + +// Check that we don't allow illegal uses of inline +// (checking C++-only constructs here) +struct c {inline int a;}; // expected-error{{'inline' can only appear on functions}} |

