Semantic analysis in progress…
As those who keep watching the demo page may already know, Scalpel's semantic analyzer has made great strides since the previous news article.
It's now able to perform semantic analysis of:
- namespace definitions
- class declarations
- global and member variable declarations
- free and member function declarations, including constructors, destructors, operator functions and conversion functions
- function parameters, including unnamed ones
- class inheritance
- simple and complex types (built-in types, classes, pointers, references, const types, volatile types, …)
- explicit, static, const, volatile, virtual, pure and/or inline free and member function declarations
It also performs:
- creation of implicitly declared destructors (when none is declared)
- some name lookup (association of a name with a semantic entity, such as a namespace, a class, a function, a variable, …)
However, it doesn't perform yet:
- creation of implicitly declared default constructor, copy constructor and assignment operator function
- semantic analysis of array sizes (since their calculation requires more advanced semantic analysis), which are equal to zero for the moment
- link between function declarations and definitions, which requires more advanced name lookup capabilities
- template stuffs
- and so many things…
Keep taking a look at the demo page from time to time. Features are sometimes implemented faster than expected!
