https://issues.dlang.org/show_bug.cgi?id=20096
Issue ID: 20096
Summary: error message 'cannot goto into try block' is followed
by seg fault
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
Severity: normal
Priority: P1
Component: dmd
Assignee: [email protected]
Reporter: [email protected]
Code:
void test()
{
int x;
try {
L2:
goto L1;
try
{
L1:
++x;
goto L2;
}
finally
{
++x;
}
} finally {}
}
Compiling gives:
test.d(12): Error: cannot goto into try block
object.Error@(0): Access Violation
----------------
0x00541490 in insertFinallyBlockCalls at C:\cbx\mars\.\s2ir.d(1669)
0x0054168E in insertFinallyBlockGotos at C:\cbx\mars\.\s2ir.d(1762)
0x00534ED2 in FuncDeclaration_toObjFile at C:\cbx\mars\.\glue.d(1182)
0x00541F09 in toObjFile at C:\cbx\mars\.\toobj.d(312)
0x004B3449 in FuncDeclaration at C:\cbx\mars\.\func.d(2403)
0x00541E96 in toObjFile at C:\cbx\mars\.\toobj.d(1016)
0x0053282B in genObjFile at C:\cbx\mars\.\glue.d(409)
--