summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--test/CMakeLists.txt1
-rw-r--r--test/expect/gccxml.broken.Class-implicit-member-bad-base-result.txt1
-rw-r--r--test/expect/gccxml.broken.Class-implicit-member-bad-base-stderr.txt2
-rw-r--r--test/expect/gccxml.broken.Class-implicit-member-bad-base-stdout.txt1
-rw-r--r--test/input/Class-implicit-member-bad-base.cxx9
5 files changed, 14 insertions, 0 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index f386e41..11110ee 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -163,5 +163,6 @@ castxml_test_gccxml_c(Typedef-called-class)
castxml_test_gccxml_c(invalid)
+castxml_test_gccxml_broken(Class-implicit-member-bad-base)
castxml_test_gccxml_broken(Class-template-constructor-template)
castxml_test_gccxml_broken(ReferenceType-to-Class-template)
diff --git a/test/expect/gccxml.broken.Class-implicit-member-bad-base-result.txt b/test/expect/gccxml.broken.Class-implicit-member-bad-base-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/test/expect/gccxml.broken.Class-implicit-member-bad-base-result.txt
@@ -0,0 +1 @@
+1
diff --git a/test/expect/gccxml.broken.Class-implicit-member-bad-base-stderr.txt b/test/expect/gccxml.broken.Class-implicit-member-bad-base-stderr.txt
new file mode 100644
index 0000000..7f45214
--- /dev/null
+++ b/test/expect/gccxml.broken.Class-implicit-member-bad-base-stderr.txt
@@ -0,0 +1,2 @@
+.*/test/input/Class-implicit-member-bad-base.cxx:6:16: error: read-only variable is not assignable
+.*/test/input/Class-implicit-member-bad-base.cxx:9:7: note: in instantiation of member function 'base<const int>::operator=' requested here
diff --git a/test/expect/gccxml.broken.Class-implicit-member-bad-base-stdout.txt b/test/expect/gccxml.broken.Class-implicit-member-bad-base-stdout.txt
new file mode 100644
index 0000000..10f3293
--- /dev/null
+++ b/test/expect/gccxml.broken.Class-implicit-member-bad-base-stdout.txt
@@ -0,0 +1 @@
+^$
diff --git a/test/input/Class-implicit-member-bad-base.cxx b/test/input/Class-implicit-member-bad-base.cxx
new file mode 100644
index 0000000..0a69e73
--- /dev/null
+++ b/test/input/Class-implicit-member-bad-base.cxx
@@ -0,0 +1,9 @@
+template <typename T> class base {
+protected:
+ T data;
+ base();
+ void operator=(base const& a) {
+ this->data = a.data;
+ }
+};
+class start: public base<int const> {};