exception-specifications, function try-blocks, ...
templated template parameters
type1 (K&R) function declarations
Normalisation of function parameter names prior to composition.
Resolution of l-value meta-expressions
asm-definition (as declaration)
Synthesis of code to construct array members
Treatment of functions as structured token lists
Microsoft extensions: __cdecl etc
$Dynamic/$Static within a meta-variable
Implementation of a function-body as structured lists
numerous meta-type specific methods. The foot of FogMetaType_Methods.xx shows what is installed.
Declarations of the form: left ::class * right = value; in a context I cannot produce a test case for.
Most uses of the template keyword prefix to clarify the nature of a subsequent name.
Many uses of decl-specifiers in syntax trees used as meta-function-arguments/bodies, meta-variable initialisers
Repair of cast unary expressions misparsed as binary expressions..
Repair of template/arithmetic expressions misparsed as arithmetic/template expressions.
Template function arguments are only deduced for simple cases.
Distinct treatment of namespaces and classes
Resolution of is_boundary() and is_pure() predicates
Use of const as an auto qualifier
Treatment of friends.
Default template arguments.
-unnested gives bad code for nested classes
Need a fix for "friend ios" typo in Sun's stdio.h
"using" isn't as flexible as it should be
Function bodies derived by meta-programming may have redundant semi-colons or blank lines - seems benign.
inline as auto within functions
revamped meta-phases, meta-constructors/meta-destructors
meta-interception of stages of expression construction
meta-break and meta-continue and meta-switch implemented
Activation of meta-statements within function bodies
10 scope::is_xxx predicates added
:: prefix to a ptr-operator in a declaration
Derived meta-functions now co-exist with their occluded base-class counterparts.
Derived meta-constructors and meta-constructors no longer interfere with execution of inherited counterparts.
The construction of base classes is no longer derived before base.
EOF encountered during parser resynchronisation gets a better diagnostic.
Text encountered while disabled by a #if need no longer be tokenisable.
meta-statements from meta-functions are no longer treated as statements.
Derived constructors/destructors named using @Scope now use the derived class name.
asm-definition (as statement)
Concatenation now generates an extension of the first element.
Resolution of $-expressions now occurs at predictable times.
multi-line diagnostic context eliminated
diagnostic context added for object-statements
function-body now constitutes a level for the purposes of multi-$ expressions
ctor-inits may use tree-expressions
ctor-inits and initialiser-clauses as object-statements
Multi-$ expressions work from function bodies within object-statement-scopes
meta-functions can now be declared to return an exposed list