summaryrefslogtreecommitdiffstats
path: root/test/expect/gccxml.any.Variable-init.xml.txt
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2015-04-28 13:45:35 (GMT)
committerBrad King <brad.king@kitware.com>2015-04-28 17:15:00 (GMT)
commitf0c00cb8bd3c5e6c38c6ee47370c15630e7446eb (patch)
tree2889095a7ca034ba79e9485052836c96d56bf3c0 /test/expect/gccxml.any.Variable-init.xml.txt
parentbafe43d6438fa5ce0ef778d5d713cd7f594370b9 (diff)
downloadCastXML-f0c00cb8bd3c5e6c38c6ee47370c15630e7446eb.zip
CastXML-f0c00cb8bd3c5e6c38c6ee47370c15630e7446eb.tar.gz
CastXML-f0c00cb8bd3c5e6c38c6ee47370c15630e7446eb.tar.bz2
Output: Refactor generation of CvQualifiedType elements
Previously our handling of cv-qualified types did not account for multiple locally cv-qualified types encountered through multiple levels of desugaring. This could lead to CvQualifiedType elements that reference elements that are generated with a different id. Refactor our internal representation of dump nodes to keep cv-qualifiers in the node ids. Teach AddTypeDumpNode to collect cv-qualifiers from each level of desugaring and compute their union. Once the desugared unqualified type is found, generate one CvQualifiedType element for the qualified type, if any. Update the expected test output to account for the new ordering of nodes. Mark the Class-template-constructor-template test case as no longer broken because this approach fixes it. Add test cases covering cv-qualifiers added at different layers of desugaring (via "T const" where T is already a "const" type in a template instantiation). GitHub-Issue: 10
Diffstat (limited to 'test/expect/gccxml.any.Variable-init.xml.txt')
-rw-r--r--test/expect/gccxml.any.Variable-init.xml.txt6
1 files changed, 3 insertions, 3 deletions
diff --git a/test/expect/gccxml.any.Variable-init.xml.txt b/test/expect/gccxml.any.Variable-init.xml.txt
index 6659b64..6061dc1 100644
--- a/test/expect/gccxml.any.Variable-init.xml.txt
+++ b/test/expect/gccxml.any.Variable-init.xml.txt
@@ -4,9 +4,9 @@
<Variable id="_3" name="var_int" type="_5" init="123" context="_1" location="f1:2" file="f1" line="2"/>
<Variable id="_4" name="var_str" type="_6" init="&quot;abc&quot;" context="_1" location="f1:3" file="f1" line="3"/>
<FundamentalType id="_5" name="int" size="[0-9]+" align="[0-9]+"/>
- <PointerType id="_6" type="_8c"/>
+ <PointerType id="_6" type="_7c"/>
+ <CvQualifiedType id="_7c" type="_7" const="1"/>
<Namespace id="_2" name="::"/>
- <CvQualifiedType id="_8c" type="_8" const="1"/>
- <FundamentalType id="_8" name="char" size="[0-9]+" align="[0-9]+"/>
+ <FundamentalType id="_7" name="char" size="[0-9]+" align="[0-9]+"/>
<File id="f1" name=".*/test/input/Variable-init.cxx"/>
</GCC_XML>$