If you create a NaBL file and use a namespace which isn’t defined the project doesn’t build.
This is correct, but there is no error in the editor and the build error is not very clear.

Example:

module namebinding
imports MiniJava

namespaces
    Classs

binding rules
    Class(c): scopes Class

Results in no editor error and the following opaque build error:

stratego.jvm.helper:
    [java] [ Main | error ] in definition nabl-scoping-site(0|0): constructor NablNsClass/0 not declared
    [java]     NablNsClass()
    [java] [ Main | error ] in definition nabl-get-scope(0|0): constructor NablNsClass/0 not declared
    [java]     NablNsClass()
    [java] [ Main | error ] in definition nabl-def-site(3|5): constructor NablNsClass/0 not declared
    [java]     NablNsClass()
    [java] [ Main | error ] in definition nabl-use-site(0|5): constructor NablNsClass/0 not declared
    [java]     NablNsClass()
    [java] [ Main | error ] Compilation failed (2,87 secs)
Submitted by David Hoepelman on 24 October 2013 at 14:35

On 28 October 2013 at 21:11 Gabriël Konat commented:

Which version of Spoofax are you using? In stable, the name binding language does not have any error reporting. In nightly, error reporting is currently broken, but we’re working on fixing it.


On 31 October 2013 at 14:45 David Hoepelman commented:

I just updated from 1.2.0.0-s40771 to 1.2.0.0-s40791 and errors are indeed reported


On 31 October 2013 at 16:03 Gabriël Konat closed this issue.

Log in to post comments