[Issue 5996] [CTFE] Undefined function call in auto return function

2011-07-06 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=5996



--- Comment #2 from bearophile_h...@eml.cc 2011-07-06 03:20:22 PDT ---
(In reply to comment #1)
 Reduced test case:

My second example shows an error message with missing line number:
Error: array index 4294967295 is out of bounds [][0 .. 0]

I have reduced it to this, I think it's better to fix this before fixing your
reduced test case:

auto foo(int n) {
auto h = new typeof(something)[n];
return h[$];
}
enum uint f = foo(1);
void main() {}

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


[Issue 5996] [CTFE] Undefined function call in auto return function

2011-07-06 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=5996



--- Comment #3 from Don clugd...@yahoo.com.au 2011-07-06 04:21:21 PDT ---
(In reply to comment #2)
 (In reply to comment #1)
  Reduced test case:
 
 My second example shows an error message with missing line number:
 Error: array index 4294967295 is out of bounds [][0 .. 0]
 
 I have reduced it to this, I think it's better to fix this before fixing your
 reduced test case:
 
 auto foo(int n) {
 auto h = new typeof(something)[n];
 return h[$];
 }
 enum uint f = foo(1);
 void main() {}

It's a problem with the gagging system. It actually shouldn't get as far as
CTFE, so the out-of-bounds error shouldn't happen.

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


[Issue 5996] [CTFE] Undefined function call in auto return function

2011-07-05 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=5996


Don clugd...@yahoo.com.au changed:

   What|Removed |Added

   Keywords|diagnostic  |ice-on-invalid-code
 CC||clugd...@yahoo.com.au


--- Comment #1 from Don clugd...@yahoo.com.au 2011-07-05 17:12:13 PDT ---
Reduced test case:
-
auto bug5996() {
if (anyOldGarbage) {}
return 2;
}
enum uint h5996 = bug5996();
static assert(h5996 == 2);

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