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
interface foo { }
proc get typedoreturn foo;
record R { }
R implements get;
This is because the compiler is expecting that in R implements get, get is a plain interface symbol.
If get is a type alias, the compiler gives an error that get is not an interface. If the record is written as record R: get { }, then the compiler gives an error about an illegal super class.
Whether or not TYPE implements function_returning_interface should be valid Chapel is an interesting design question (I think it should be), but at the very least it should not be an internal error.
The text was updated successfully, but these errors were encountered:
The following code results in a segfault
This is because the compiler is expecting that in
R implements get
,get
is a plain interface symbol.If
get
is a type alias, the compiler gives an error thatget
is not an interface. If the record is written asrecord R: get { }
, then the compiler gives an error about an illegal super class.Whether or not
TYPE implements function_returning_interface
should be valid Chapel is an interesting design question (I think it should be), but at the very least it should not be an internal error.The text was updated successfully, but these errors were encountered: