]> granicus.if.org Git - clang/commitdiff
Tests for "Disabling of "redefine_extname" pragma for C++ code"
authorAlexey Bataev <a.bataev@hotmail.com>
Fri, 17 Jul 2015 04:21:51 +0000 (04:21 +0000)
committerAlexey Bataev <a.bataev@hotmail.com>
Fri, 17 Jul 2015 04:21:51 +0000 (04:21 +0000)
In response to Richard Smith's comment (http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20150622/131782.html), this patch disables "redefine_extname" pragma for C++ code. Also, I added a test that this pragma doesn't apply to static declarations.
Differential Revision: http://reviews.llvm.org/D10805

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@242507 91177308-0d34-0410-b5e6-96231b3b80d8

test/Sema/redefine_extname.c [new file with mode: 0644]

diff --git a/test/Sema/redefine_extname.c b/test/Sema/redefine_extname.c
new file mode 100644 (file)
index 0000000..8202176
--- /dev/null
@@ -0,0 +1,6 @@
+// RUN: %clang_cc1 -triple=x86_64-unknown-linux -Wpragmas -verify %s
+
+// Check that pragma redefine_extname applies to external declarations only.
+#pragma redefine_extname foo_static bar_static
+static int foo_static() { return 1; } // expected-warning {{#pragma redefine_extname is applicable to external C declarations only; not applied to function 'foo_static'}}
+