Elias Holzer
d3fb9289cf
Synced new and old parser.
...
* Implemented missing parts in regards to class templates.
* Fixed couple of class member initialization issues in C++ AST classes.
* Make code more look alike so it's easier to compare them.
* All tests pass now with old and new parser. Especially the nasty STL one with the ostream typedef.
11 years ago
Elias Holzer
24cd3840b5
Added support for unnamed enums to new parser.
11 years ago
triton
b6cf05e140
Explicitly initialize Enumeration class members.
...
Trying to fix intermittent failing test `TestPasses.TestCheckFlagEnumsPass`.
11 years ago
triton
257edf878f
Restrict path replacing in the parser to Windows platforms.
11 years ago
triton
ea171cde97
Added copy constructors to Enumeration::Item and Declaration.
11 years ago
triton
aa3e8dd5bd
Explicitly define some copy constructors to work around missing symbols.
...
We should not need to do this, but Clang ignores the GCC flag "-fkeep-inline-functions" which we need to actually get these to be properly exported in a library...
11 years ago
triton
678639acdc
Explicitly define ASTContext else the declaration will not export symbols.
11 years ago
Dimitar Dobrev
ccc1608a81
Fixed a regression in the new parser causing a crash on enums with empty names.
11 years ago
triton
6f0b2f729e
Improved the comments parsing in the new parser with support for raw and full comments.
11 years ago
triton
ee3fbd8e03
Added support for anonymous C++11 inline namespaces to the AST and parsers.
11 years ago
triton
83be8a7153
Initialized some previously uninitialized memory fields on the parser.
11 years ago
Dimitar Dobrev
2605ac680d
Added stubbed support for pack expansions to the new parser as well.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
0e905dbd36
Clean up the file path when finding translation units since they might differ between calls.
12 years ago
triton
1afaad6847
Added missing definitions for the AST structures in the C++ parser.
12 years ago
triton
b11644de19
Converted the rest of the inline declarations to be defined outside the header.
12 years ago
triton
6edd10b514
Move CppParser method definitions out of the headers and into the source file.
...
This is a workaround for missing symbols when P/Invoking on the Mac for instance. There should be a working "-fkeep-inline-functions" switch available in Clang but upon reading the source code, it does not do anything besides consuming the option (not even a warning!).
12 years ago
triton
5b3d01af73
Fixes to the native AST declarations.
12 years ago
triton
afd626b93f
Added explicit kinds to declarations and kinds in the new parser.
...
This is needed for runtime polymorphism when converting the AST generated by the new parser.
12 years ago
triton
a754b46438
Reworked function template parsing.
...
The previous version did not handle methods properly and lead to duplicate definitions since it did not check for existing templates with the same signature.
12 years ago
triton
901f42eb1d
Added a default constructor to Declaration to initialize the members.
12 years ago
triton
edc833e69f
Updated the C++ parser AST to the ASTContext class.
12 years ago
triton
b3f41256e3
Moved the native AST declarations to their own namespace.
12 years ago
Joao Matos
17b3ac93b6
GCC/Clang parser build fixes.
12 years ago
triton
62839a3f0a
Added the new C++/CLI free parser.
...
I benchmarked it and it's about the same speed in Release mode (maybe a bit faster) but 3x slower in VS Debug mode due to all the STL usage.
12 years ago