digitalmars.D.bugs - dstress alias_17.d
- Brad Roberts (46/46) Jan 27 2007 The error message for this test case has changed from what it was when
The error message for this test case has changed from what it was when it was created. From bugs/2983, DMD 0.111 outputs: Assertion failure: '0' on line 909 in file 'func.c' abnormal program termination With DMD 1.00 $ dmd alias_17.d alias_17.d(17): variable dstress.nocompile.alias_17._test is aliased to a function alias_17.d(21): function dstress.nocompile.alias_17.test () does not match parameter types (int) alias_17.d(21): Error: expected 0 arguments, not 1 $ cat -n alias_17.d 1 // $HeadURL: http://dstress.kuehne.cn/nocompile/alias_17.d $ 2 // $Date: 2005-12-03 23:19:07 +0100 (Sat, 03 Dec 2005) $ 3 // $Author: thomask $ 4 5 // author Ilya Zaitseff <sark7 mail333.com> 6 // date 2005-02-14 7 // uri news:opsl6xrbnaaaezs2 robingood 8 // url nntp://news.digitalmars.com/digitalmars.D.bugs/2983 9 10 // __DSTRESS_ELINE__ 18 11 12 module dstress.nocompile.alias_17; 13 14 void test(){ 15 } 16 17 int _test; 18 alias _test test; 19 20 void check(){ 21 test = 1; 22 } Now the fun question.. is this invalid code or not? It's a form of shadowing as there's two 'test's in play. The error messages do indicate that, though the line producing the error surprises me. My instinct would have been that the alias line would have been messaged. I wonder how hard it'd be for all three lines to be referenced just to make it very clear what's going on. The easy thing to do would be to change line 10 to point at 17 instead of 18 and move along, considering the original bug fixed. Thoughts? Later, Brad
Jan 27 2007