aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2012-07-19 16:08:28 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2012-07-19 16:08:28 +0000
commitee7af50cc7999a2e5101da80bef0fdcff8c90b11 (patch)
tree536b2888211377bb4505e38c3a9835dd2b305419
parenteee18c38b6dd29c0e6982f5565fcbc3f76d1bf4d (diff)
Add a test case for rdar://11806334.
Makes sure we don't overflow the stack. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160511 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/SemaCXX/crashes.cpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/test/SemaCXX/crashes.cpp b/test/SemaCXX/crashes.cpp
index b77248ef41..d02704c87c 100644
--- a/test/SemaCXX/crashes.cpp
+++ b/test/SemaCXX/crashes.cpp
@@ -104,3 +104,35 @@ namespace PR10270 {
return;
}
}
+
+namespace rdar11806334 {
+
+class cc_YCbCr;
+
+class cc_rgb
+{
+ public:
+ cc_rgb( uint p ); // expected-error {{unknown type name}}
+ cc_rgb( cc_YCbCr v_in );
+};
+
+class cc_hsl
+{
+ public:
+ cc_rgb rgb();
+ cc_YCbCr YCbCr();
+};
+
+class cc_YCbCr
+{
+ public:
+ cc_YCbCr( const cc_rgb v_in );
+};
+
+cc_YCbCr cc_hsl::YCbCr()
+{
+ cc_YCbCr v_out = cc_YCbCr( rgb());
+ return v_out;
+}
+
+}