CppHeaderParser 2.1 Released
Posted by: senex 12 years, 7 months ago
(Comments)
CppHeaderParser version 2.1 is now released. This release fixed many bugs and added support for more complex C++ header files. Some features where handling and support were added and improved include:
- unions
- templates
- virtual inheritance
- anonymous structs (and structs in general)
- operator overloading functions
- function pointers
Project page can be found at http://senexcanis.com/open-source/cppheaderparser/
Fixed bugs:
3488053: Nested classes have incorrect member access specifiers
3488360: Inheriting class with namespace causes error
3487551: Return types of virtual functions start with 'virtual '
3488049: Non-manifest constant arrays sizes cause incorrect parsing
3488358: Option to suppress printing of warnings and errors
To suppress errors do the following:
CppHeaderParser.print_errors = 0
To supress warnings do the following:
CppHeaderParser.print_warnings = 0
3488054: Out-of-line inlines / template methods
3488275: Template methods reported incorrectly
3488275: Template methods reported incorrectly
3491240: Explicit constructors are reported as normal methods
3491178: Certain template methods are not reported properly
3491232: Nested struct causes incorrect access specifiers for parent
3491319: Anonymous struct causes crash.
Also fixed variable instances followed by struct definitions detecting the type as that struct.
3491334: Virtual inheritance causes crash
3492237: Cast array size reports method named "["
3497164: Anonymous structs causes crash
3497160: Bad parse when friending forward class
3497155: Function declarations cause crash
3497168: Constant arithmetic reports bogus methods
3497166: Forward struct reports bogus property
3497162: Bad parse of nested union
Now treat unions like special classes since parsing is a subset
3497158 and 3517308: Fixed parsing of template declarations by filtering them out.
3514728: Multi-line Preprocessor confuses parser
3517289: Parser crashes if functions are declared under extern "C"
3514671: Does not parse struct datatype as a struct/class property
3515330: Namespace causes improper access level in nested classes
3514672: Incorrect parse of operator=()
Added support for all operator oveloads
Cleaned up tab warnings
3497170: Function pointers confuse parser
3523010: Support for multi-word accessor: Return type wrong
3519178: Problems with namespaces and templates
Fixed return type having colons
3523196: Problems with "advanced" namespace and template usage
3524327: Pure virtual method lost its constness
Resolve feature requests:
3488051: Classes are well reported but structs (which are classes except for default access specifier) are not reported at all.
3488050: Identify array data members as arrays
Variables have the following 2 new attributes:
* array: 0 or 1 depending on if its an array
* array_size: If something is between [ and ], that will go here
Implement feature request:
3491220: structs are reported as classes
3519502: Support for Qt Slots
Now curAccessSpecifier supports multi-word accessor specifiers such as "public slots"
3523198: Add possibility to ignore some symbols
Now symbols in CppHeaderParser.ignoreSymbols are ignored.
Q_OBJECT is in the list initially
3523235: Save "constness" of functions/methods
Accessed via the "const" tag
Recent Posts
- Podcast feed for Connected Life Christian Church
- PulseAudio Sound Sink
- CppHeaderParser 2.4.3 Released
- CppHeaderParser 2.4.2 Released
- CppHeaderParser 2.4.1 Released
Archive
2016
- November (1)
2014
2013
- August (1)
2012
2011
2006
- June (2)
Categories
- Comic (1)
- CppHeaderParser (8)
- HOWTO (3)
- Project (2)
Authors
- senex (23)
Comments