summaryrefslogtreecommitdiffstats
path: root/clang/test/Preprocessor/pragma-pushpop-macro.c
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2010-10-19 17:40:53 +0000
committerTed Kremenek <kremenek@apple.com>2010-10-19 17:40:53 +0000
commit2c8028bcf40f4bb44b3c73f788d2f63d2d353d9a (patch)
tree56e43937754e9ea307e5973ad2978a796fb9c1e6 /clang/test/Preprocessor/pragma-pushpop-macro.c
parent6339f1ce2f3f6936c98004fc0883c747fa859435 (diff)
downloadbcm5719-llvm-2c8028bcf40f4bb44b3c73f788d2f63d2d353d9a.tar.gz
bcm5719-llvm-2c8028bcf40f4bb44b3c73f788d2f63d2d353d9a.zip
In ~Preprocessor(), also cleanup the MacroInfo objects left-over from stray "#pragma push_macro" uses. This
fixes a potential memory leak. llvm-svn: 116826
Diffstat (limited to 'clang/test/Preprocessor/pragma-pushpop-macro.c')
-rw-r--r--clang/test/Preprocessor/pragma-pushpop-macro.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/clang/test/Preprocessor/pragma-pushpop-macro.c b/clang/test/Preprocessor/pragma-pushpop-macro.c
index 87cceaa4193..71b0e0e2600 100644
--- a/clang/test/Preprocessor/pragma-pushpop-macro.c
+++ b/clang/test/Preprocessor/pragma-pushpop-macro.c
@@ -25,9 +25,17 @@ int pmx3 = X;
#pragma pop_macro("Y")
int pmy1 = Y;
+// Have a stray 'push' to show we don't crash when having inbalanced
+// push/pop
+#pragma push_macro("Y")
+#define Y 4
+int pmy2 = Y;
+
// CHECK: int pmx0 = 1
// CHECK: int pmy0 = 2
// CHECK: int pmx1 = 1
// CHECK: int pmx2 = 2
// CHECK: int pmx3 = 1
// CHECK: int pmy1 = 3
+// CHECK: int pmy2 = 4
+
OpenPOWER on IntegriCloud