Reported by vitus to D.learn: http://forum.dlang.org/post/dhqqkndwgljtxnycziyo@forum.dlang.org ---- void foo()(){} void bar(int){} alias foobar = foo; alias foobar = bar; void main() { foobar(1); /* Error: overload alias 'foo' is not a variable */ } ---- Works when when the call has a leading dot: ---- .foobar(1); ---- Works when the order of the aliases is switched: ---- alias foobar = bar; alias foobar = foo; ----
https://github.com/D-Programming-Language/dmd/pull/4857
Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/803da8f10c0c5d09da5b19274ba1a1b9763d5e03 fix Issue 14858 - spurious "Error: overload alias 'foo' is not a variable" when overloading template and non-template via aliases https://github.com/D-Programming-Language/dmd/commit/e91a6ac45b6adc2d8080df14caca0b62cad19a9b Merge pull request #4857 from 9rnsr/fix14858 Issue 14858 - spurious "Error: overload alias 'foo' is not a variable" when overloading template and non-template via aliases
*** Issue 15120 has been marked as a duplicate of this issue. ***
Commit pushed to dmd-cxx at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/56edd1af4bddce6752105dafacac9653d9fe2cdb Issue 14858 - spurious "Error: overload alias foo is not a variable" when overloading template and non-template via aliases