First Last Prev Next    No search results available
Details
: [llvm-g++] Cleanups and gotos don't mix properly
Bug#: 291
: tools
: llvm-g++
Status: RESOLVED
Resolution: FIXED
: All
: All
: 1.0
: P2
: normal
: 1.2

:
: compile-fail
:
:
  Show dependency tree - Show dependency graph
People
Reporter: Misha Brukman <brukman+bugs@uiuc.edu>
Assigned To: Chris Lattner <sabre@nondot.org>

Attachments
Preprocessed source (2.36 KB, text/plain)
2004-03-15 13:26, Misha Brukman
Details


Note

You need to log in before you can comment on or make changes to this bug.

Related actions


Description:   Opened: 2004-03-15 13:14
Ironically, compiling the attached testcase, derived from
tools/bugpoint/CrashDebugger.cpp results in a crash:

% llvm-g++ crash3.i -c
cc1plus: ../../gcc-3.4-cvs/gcc/llvm-expand.c:6647: llvm_expand_function_end:
Assertion `Fn->ExpandInfo->GotoFixupList == 0 && "Goto fixups remain?"' failed.
crash3.i: In function `void foo()':
crash3.i:88: internal compiler error: Aborted
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://llvm.cs.uiuc.edu> for instructions.

I've narrowed down the template code for std::vector as much as I can, if you
see what else can be cut out, feel free to revise the attachment.
------- Comment #1 From Misha Brukman 2004-03-15 13:26:06 -------
Created an attachment (id=100) [details]
Preprocessed source
------- Comment #2 From Chris Lattner 2004-03-15 21:51:30 -------
Here's a reduced testcase:

struct X { ~X(); };

void foo() {
  X v;
  
TryAgain: 
  for (;;)
    ;
  goto TryAgain;
}

This actually looks like a Misha bug that is fixable for 1.2 maybe!  :) :)

-Chris
------- Comment #3 From Chris Lattner 2004-03-15 22:05:03 -------
Here's the testcase, further reduced:

struct X { ~X(); };
void foo() {
  X v;
TryAgain: 
  goto TryAgain;
}

-Chris
------- Comment #4 From Chris Lattner 2004-03-15 23:26:10 -------
Fixed.  Patch here:
http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20040315/013173.html

Testcase here:
test/Regression/C++Frontend/2004-03-15-CleanupsAndGotos.cpp

Long live ll-bugpoint

-Chris

First Last Prev Next    No search results available