new scoping rules for 'if' now active

This commit is contained in:
Araq 2013-06-04 01:11:55 +02:00
commit b487ebaaba
4 changed files with 6 additions and 4 deletions

View file

@ -14,7 +14,7 @@ const
hasTinyCBackend* = defined(tinyc) hasTinyCBackend* = defined(tinyc)
useEffectSystem* = true useEffectSystem* = true
hasFFI* = defined(useFFI) hasFFI* = defined(useFFI)
newScopeForIf* = false # XXX activate for 0.9.4 newScopeForIf* = true
type # please make sure we have under 32 options type # please make sure we have under 32 options
# (improves code efficiency a lot!) # (improves code efficiency a lot!)

View file

@ -1920,8 +1920,6 @@ the corresponding *then* block:
In the example the scopes have been enclosed in ``{| |}``. In the example the scopes have been enclosed in ``{| |}``.
**Note**: These scoping rules will be active in 0.9.4.
Case statement Case statement
-------------- --------------

View file

@ -2,7 +2,7 @@ version 0.9.4
============= =============
- make 'bind' default for templates and introduce 'mixin'; - make 'bind' default for templates and introduce 'mixin';
special rule for ``[]=`` - special rule for ``[]=``
- ``=`` should be overloadable; requires specialization for ``=``; general - ``=`` should be overloadable; requires specialization for ``=``; general
lift mechanism in the compiler is already implemented for 'fields' lift mechanism in the compiler is already implemented for 'fields'
- mocking support with ``tyProxy`` that does: fallback for ``.`` operator - mocking support with ``tyProxy`` that does: fallback for ``.`` operator

View file

@ -18,6 +18,10 @@ Library Additions
Changes affecting backwards compatibility Changes affecting backwards compatibility
----------------------------------------- -----------------------------------------
- The scoping rules for the ``if`` statement changed for better interaction
with the new syntactic construct ``(;)``.
Compiler Additions Compiler Additions
------------------ ------------------