Open zachwolfe opened 2 years ago
Update: this is now "fixed" with recent changes to TIR solving. That is, compilation at least exits with an error message instead of never exiting at all. But I will leave this issue open for two reasons:
foo
declref in the return type would fail to find any declarations (unless there are other overloads of that name in the outer scope). In theory this would also break the dependency cycle, freeing up the typechecker to progress to diagnosing the undefined foo
and 0.member
declrefs.
Code like this causes TIR generation to go on forever. It seems to be triggered by the combination of using the the function name as its own return type, and having a member ref in the body of the function.