[Issue 199] Label causes scope to collapse into parent

d-bugmail at puremagic.com d-bugmail at puremagic.com
Wed May 29 12:36:55 PDT 2013


http://d.puremagic.com/issues/show_bug.cgi?id=199



--- Comment #22 from monarchdodra at gmail.com 2013-05-29 12:36:54 PDT ---
(In reply to comment #21)
> The only statement nodes that create a scope according to the spec are
> ScopeStatement and ScopeBlockStatement.  When you have
> 
> Identifier : { StatementList }
> 
> the structure is
> 
> LabeledStatement
>     Identifier
>     :
>     NoScopeStatement
>         BlockStatement
>             {
>             StatementList
>             }
> 
> No node that creates a scope here.  It's the same way with the conditional
> compilation statements.  Of course, statements within the StatementList may
> introduce their own scopes, but nothing in this parse tree as it stands creates
> a scope.

Hum. OK. I see how that makes sense. One of the things that trips me up though
is that D created the possibility to label a block but doesn't do anything with
it.

To be honest, the way I had first understood labeling blocks was being able to
do this:
http://d.puremagic.com/issues/show_bug.cgi?id=8622

But even then, in that example, I would have expected a scope to be created.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list