summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenObjCXX
diff options
context:
space:
mode:
authorNico Weber <nicolasweber@gmx.de>2012-02-21 03:52:05 +0000
committerNico Weber <nicolasweber@gmx.de>2012-02-21 03:52:05 +0000
commita69a3137ca5606269459c59f6143c2e3221ebc00 (patch)
treeec0ca54d9688dfc1a8b7526c3249089fddbfcdac /clang/test/CodeGenObjCXX
parent729e3aae92d905efd58bfe63d0b64bb9d48052dc (diff)
downloadbcm5719-llvm-a69a3137ca5606269459c59f6143c2e3221ebc00.tar.gz
bcm5719-llvm-a69a3137ca5606269459c59f6143c2e3221ebc00.zip
Add a test case for r150976.
llvm-svn: 151027
Diffstat (limited to 'clang/test/CodeGenObjCXX')
-rw-r--r--clang/test/CodeGenObjCXX/debug-info.mm41
1 files changed, 41 insertions, 0 deletions
diff --git a/clang/test/CodeGenObjCXX/debug-info.mm b/clang/test/CodeGenObjCXX/debug-info.mm
new file mode 100644
index 00000000000..30af4c30c50
--- /dev/null
+++ b/clang/test/CodeGenObjCXX/debug-info.mm
@@ -0,0 +1,41 @@
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -g -emit-obj %s
+
+// This test passes if clang doesn't crash.
+
+template <class C> class scoped_ptr {
+public:
+ C* operator->() const { return 0; }
+};
+
+@class NSWindow;
+@class NSImage;
+@interface NSWindow {
+ NSImage *_miniIcon;
+}
+-(id)windowController;
+@end
+
+class AutomationResourceTracker {
+public:
+ NSWindow* GetResource(int handle) { return 0; }
+};
+
+# 13 "automation/automation_window_tracker.h"
+class AutomationWindowTracker : public AutomationResourceTracker { };
+
+template<typename NST> class scoped_nsobject { };
+
+@interface TabStripController{
+ scoped_nsobject<NSImage> defaultFavicon_;
+}
+@end
+
+@interface BrowserWindowController {
+ TabStripController* tabStripController_;
+}
+@end
+
+void WindowGetViewBounds(scoped_ptr<AutomationWindowTracker> window_tracker_) {
+ NSWindow* window = window_tracker_->GetResource(42);
+ BrowserWindowController* controller = [window windowController];
+}
OpenPOWER on IntegriCloud