March 03, 2017 [Issue 17242] Specialized templates defined inside functions fail lookup, moving them outside makes them work | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=17242 Walter Bright <bugzilla@digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |bugzilla@digitalmars.com --- Comment #1 from Walter Bright <bugzilla@digitalmars.com> --- It also is the case with nested functions: int foo(int i) { int bar(int a) { return a; } int bar(uint b) { return b; } return bar(i); } Name lookup is different inside functions. Overloading function definitions is not allowed, neither are forward references: int foo(int i) { return bar(i); int bar(int a) { return a; } } -- |
November 18, 2022 [Issue 17242] Specialized templates defined inside functions fail lookup, moving them outside makes them work | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=17242 RazvanN <razvan.nitu1305@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |razvan.nitu1305@gmail.com Resolution|--- |INVALID --- Comment #2 from RazvanN <razvan.nitu1305@gmail.com> --- Indeed, according to the spec [1] this is invalid. [1] https://dlang.org/spec/function.html#nested-declaration-order -- |
Copyright © 1999-2021 by the D Language Foundation