When replacing macro formal parameters, the preprocessor should not replace matching strings that are not complete tokens. The test for this was incorrect, and failed when a match was found at the start of the replacement text.
Backported from development.
Backported from devel, but due to the extra complexity of for loop handling in v0.9, makes less effort to elaborate all the code before giving up.
It turns out that the new feature was actually a bug.
The return type of a function should be elaborated in the context of the enclosing scope, not in the context of the function itself.
…rnal net. The compiler correctly reports an error when a module port has no associated internal net/reg, but could crash when the module was instantiated.