www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - dmd infinite loop?

reply Regan Heath <regan netwin.co.nz> writes:
This source causes dmd to go into lala land and never? return...

--[test2.d]--
import fooint;
import foolong;

void main() {
	static ulong[] b = [0,1,2,3];
	toFoo(b);
}


--[fooint.d]--
module fooint;

char[] toFoo(uint[] a) {
	return "";
}

alias fooint.toFoo toFoo;


--[foolong.d]--
module foolong;

char[] toFoo(ulong[] a) {
	return "";
}

alias foolong.toFoo toFoo;


D:\D\src\build>dmd test2.d fooint.d foolong.d
fooint.d(3): function toFoo conflicts with foolong.toFoo at foolong.d(3)
.. still running ..

~99% cpu, no change in mem usage, vm size etc.

Regan.

-- 
Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/
Jun 22 2004
parent Regan Heath <regan netwin.co.nz> writes:
Still broken as of v0.94

On Wed, 23 Jun 2004 17:40:08 +1200, Regan Heath <regan netwin.co.nz> wrote:

 This source causes dmd to go into lala land and never? return...

 --[test2.d]--
 import fooint;
 import foolong;

 void main() {
 	static ulong[] b = [0,1,2,3];
 	toFoo(b);
 }


 --[fooint.d]--
 module fooint;

 char[] toFoo(uint[] a) {
 	return "";
 }

 alias fooint.toFoo toFoo;


 --[foolong.d]--
 module foolong;

 char[] toFoo(ulong[] a) {
 	return "";
 }

 alias foolong.toFoo toFoo;


 D:\D\src\build>dmd test2.d fooint.d foolong.d
 fooint.d(3): function toFoo conflicts with foolong.toFoo at foolong.d(3)
 .. still running ..

 ~99% cpu, no change in mem usage, vm size etc.

 Regan.
-- Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/
Jun 27 2004