[Issue 1697] New: Internal Compiler error 2322
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Wed Nov 28 08:52:34 PST 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1697
Summary: Internal Compiler error 2322
Product: D
Version: 1.023
Platform: PC
OS/Version: Windows
Status: NEW
Severity: critical
Priority: P2
Component: DMD
AssignedTo: bugzilla at digitalmars.com
ReportedBy: dick221z at yahoo.com
compiling the following with the switches "-O -inline -release" gives an
Internal error: ..\ztc\cgcod.c 2322
The error goes away if the -O switch is not used.
The problem 1st showed up in 1.023 and is also in 1.024.
Removing any line of code in this example will make the error go away.
-------------------------------------
import std.utf;
class foo1
{
this(){}
void method1( char [] name ){}
void method2( int i, char [] name){}
}
struct foo
{
char [] Name;
}
class someclass
{
foo1 FooClass;
foo FooStruct;
private:
void func()
{
wchar [][] theNames;
FooClass.method2(-1, FooStruct.Name);
FooClass.method2(-1, FooStruct.Name);
foreach( Name; theNames )
{
auto char [] thename = toUTF8(Name);
if( thename[0..3] == "123" )
FooClass.method1(thename);
if( thename[0..3] == "345" || thename[0..3] == "765" )
FooClass.method1(thename);
}
FooClass.method2(-1, FooStruct.Name);
}
public:
this(){FooClass = new foo1;}
}
--
More information about the Digitalmars-d-bugs
mailing list