| Age | Commit message (Collapse) | Author | Lines |
|
[breaking-change]
|
|
|
|
This pass is purely AST based, and by running it earlier we emit more
useful error messages, e.g. type inference fails in the case of `let r =
break;` with few constraints on `r`, but its more useful to be told that
the `break` is outside a loop (rather than a type error) when it is.
Closes #13292.
|
|
compile-fail tests, run-fail tests, and run-pass tests.
|
|
Before it was always stated that it was a "break outside of a loop" when you
could very well be in a loop, but just in a block instead.
Closes #3064
|
|
|
|
|
|
|
|
Also adds proper checking for cont/break being inside a loop.
Closes #1854
Issue #1619
|
|
In both landing pads and break/cont/ret unwinding.
Closes #300
|
|
This changes the indexing syntax from .() to [], the vector syntax from ~[] to
[] and the extension syntax from #fmt() to #fmt[]
|
|
While it is still technically possible to test stage 0, it is not part of any
of the main testing rules and maintaining xfail-stage0 is a chore. Nobody
should worry about how tests fare in stage0.
|
|
|
|
|
|
|
|
The typechecker should really check for this, but at least now
there's an error message rather than an inexhaustive match failure
in trans.
|