Bug 4640 – nothrow before nested function signature doesn't compile

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
Other
OS
Linux
Creation time
2010-08-13T03:07:00Z
Last change time
2011-02-21T12:30:13Z
Keywords
rejects-valid
Assigned to
nobody
Creator
bugzilla

Comments

Comment #0 by bugzilla — 2010-08-13T03:07:39Z
This doesn't compile: nothrow void foo() { nothrow void bar() { } bar(); } test.d(1): Error: function test.foo 'foo' is nothrow yet may throw Moving 'nothrow' to the other side of the nested function's signature works: nothrow void foo() { void bar() nothrow { } bar(); } Could be related to bug 3924, but I don't think this case is covered there.
Comment #1 by bearophile_hugs — 2010-10-27T03:59:48Z
See bug 5006 for a similar problem with pure tag.
Comment #2 by kennytm — 2011-02-21T11:39:31Z
Looks like it is fixed in v2.052.