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
From crystal-lang/crystal#11145 (review), there should be a place where every compile-time flag for breaking feature previews is listed. This list should be public and contained in the language reference itself. For example:
To define a flag, simply use the --define or -D option, like so:
crystal some_program.cr -Dflag
A flag that starts with preview_ enables a preview compiler feature (link).
Specification - Preview compiler features
A preview compiler feature changes the behaviour of the compiler in a way that may prevent existing code from working. In other to maintain compatibility, these features are enabled by compile-time flags (link), and will be enforced in Crystal 2.0 or turned into warnings some time before a 2.0 release. All preview feature flags must start with preview_. The currently supported preview compiler features are:
* preview_multi_assign (link): Enables stricter checks on one-to-many multiple assignments.
Preview compiler features are experimental and subject to incompatible changes even between minor releases.
Specification - Preview compiler features - Multiple assignment
(the full specification of changes applied by preview_multi_assign, as well as any migration paths applicable)
There should probably be notes which version introduced a preview flag, if and when it was accepted to be final and if and when its absence leads to deprecation warnings.
From crystal-lang/crystal#11145 (review), there should be a place where every compile-time flag for breaking feature previews is listed. This list should be public and contained in the language reference itself. For example:
Specification - Compile-time flags
Specification - Preview compiler features
Specification - Preview compiler features - Multiple assignment
Specification - Assignment - Multiple assignment
The text was updated successfully, but these errors were encountered: