summaryrefslogtreecommitdiffstats
path: root/test/CMakeLists.txt
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-03-27 17:04:44 (GMT)
committerBrad King <brad.king@kitware.com>2014-03-27 18:14:19 (GMT)
commitfc66c82e1de6afd4453b7223c51de50428a40769 (patch)
treeb75a56e010a74b00ed3d7d9979688faf3652cb14 /test/CMakeLists.txt
parentf2d0fdfe812c7f96d8193194a5840ff011aa7ec8 (diff)
downloadCastXML-fc66c82e1de6afd4453b7223c51de50428a40769.zip
CastXML-fc66c82e1de6afd4453b7223c51de50428a40769.tar.gz
CastXML-fc66c82e1de6afd4453b7223c51de50428a40769.tar.bz2
test: Show duplication of reference-to-class-template-specialization types
Clang generates a distinct TemplateSpecializationType for each appearance of A<T> for some template A<>. They are all sugar for an underlying RecordType. While they all share the same canonical type, LValueReferenceType instances that refer to them are also distinct and do not share the same canonical type because each has a different pointee type. Add tests demonstrating cases where this causes duplicate ReferenceType elements to be generated. Mark them as "broken" and add a note in the expected output that matches nothing but documents the problem.
Diffstat (limited to 'test/CMakeLists.txt')
-rw-r--r--test/CMakeLists.txt7
1 files changed, 7 insertions, 0 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 8c50ce2..2d376ba 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -48,6 +48,10 @@ macro(castxml_test_gccxml test)
castxml_test_gccxml_common(gccxml cxx -std=c++98 ${test})
endmacro()
+macro(castxml_test_gccxml_broken test)
+ castxml_test_gccxml_common(gccxml.broken cxx -std=c++98 ${test})
+endmacro()
+
macro(castxml_test_gccxml_c test)
castxml_test_gccxml_common(gccxml.c c -std=c89 ${test})
endmacro()
@@ -148,3 +152,6 @@ castxml_test_gccxml_c(FundamentalType)
castxml_test_gccxml_c(Typedef-called-class)
castxml_test_gccxml_c(invalid)
+
+castxml_test_gccxml_broken(Class-template-constructor-template)
+castxml_test_gccxml_broken(ReferenceType-to-Class-template)