| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Give the our __float128 struct an internal '__castxml' name so that it
can be identified during traversal of member lists. Do not report the
struct as a member of the translation unit since the typedef will be
generated as a FundamentalType directly. Also generate empty mangled=""
attributes for mangled names involving our __float128 struct since the
mangled names will not use the "g" that GCC would for the builtin type.
Add test cases that do not use --castxml-start. Verify that no test
case produces '__castxml' in its output to ensure we always hide such
internal details from the generated output.
GitHub-Issue: 18
|
|
|
|
|
|
|
|
|
|
|
|
| |
GNU compilers have a builtin __float128 type but Clang does not. Since
commit fe1bb977ee (Detect: Provide __float128 when simulating GNU
compilers, 2015-02-24) we define __float128 as a typedef in the preamble
referencing a struct with the proper size and alignment. Avoid exposing
this implementation detail to clients by generating a FundamentalType
element as a special case when our typedef is encountered. This matches
gccxml behavior when __float128 is encountered.
GitHub-Issue: 18
|
|
|
|
|
|
| |
Original gccxml output used the singular name, so we should too for
compatibility. Fix this typo left from commit defc576826 (Output:
Generate Function and related elements, 2014-02-12).
|
|
|
|
|
|
| |
The gccxml output format includes mangled="" attributes on almost all
elements. Clang only defines mangling for function and variable
declarations. Add mangled attributes to castxml output where possible.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
This information is produced by gccxml, so add it to our output too.
Since we don't know the architecture that will be targeted during
testing, match any size and align values with "[0-9]+".
|
|
|
|
| |
This information is produced by gccxml, so add it to our output too.
|
|
GNU compilers provide a __float128 builtin type on Intel architectures.
When simulating such GNU compiler preprocessing, define a __float128
type with the expected size and alignment in case the translation unit
references it.
|