You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The mere presence of a type alias can lead to ambiguities in generated code which cause compilation to fail, e.g.,
modulefoo;publictypeA=unit{
: uint8;};publictypeB=A;# PRESENCE OF THIS LINE TRIGGERS THE ERROR.
$ spicyc -dj foo.spicy[error] foo.spicy:3:17-5:2: ID 'foo::A::parse1' is ambiguous[error] foo.spicy:3:17-5:2: ID 'foo::A::parse2' is ambiguous[error] foo.spicy:3:17-5:2: ID 'foo::A::parse3' is ambiguous[error] foo.spicy:3:17-5:2: ID 'spicy_rt::waitForInput' is ambiguous[error] foo.spicy:3:17-5:2: unknown ID 'self'[error] spicyc: aborting after errors
The only workaround for now seems to be to not use a type alias in case it causes such errors.
The text was updated successfully, but these errors were encountered:
An alias like `public type Unit1 = Unit2` used to lead to C++-side
compiler errors, which this fixes. We also fully support this now by
making both `Unit1` and `Unit2` available for parsing to host
applications. Internally, the `Unit1` parser is just a small facade
pointing to the parsing functions for `Unit2`.
Closes#1493.
An alias like `public type Unit1 = Unit2` used to lead to C++-side
compiler errors, which this fixes. We also fully support this now by
making both `Unit1` and `Unit2` available for parsing to host
applications. Internally, the `Unit1` parser is just a small facade
pointing to the parsing functions for `Unit2`.
Closes#1493.
The mere presence of a type alias can lead to ambiguities in generated code which cause compilation to fail, e.g.,
The only workaround for now seems to be to not use a type alias in case it causes such errors.
The text was updated successfully, but these errors were encountered: