First Last Prev Next    No search results available
Details
: C++ frontend can crash when compiling virtual base classes
Bug#: 59
: tools
: llvm-g++
Status: RESOLVED
Resolution: FIXED
: PC
: Linux
: 1.0
: P2
: normal
: 1.1

:
:
:
:
  Show dependency tree - Show dependency graph
People
Reporter: Chris Lattner <sabre@nondot.org>
Assigned To: Chris Lattner <sabre@nondot.org>

Attachments


Note

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

Related actions


Description:   Opened: 2003-10-27 11:52
Compiling this testcase:
---
template<class T>
struct super {
  int Y;
  void foo();
};

template <class T> 
struct test : virtual super<int> {};

extern test<int> X;

void foo() {
  X.foo();
}
---

Causes the C++ frontend to crash like this:

ERROR: Type doesn't have size: "struct.test<int>"
2003-10-27-VirtualBaseClassCrash.cpp: In function `void foo()':
2003-10-27-VirtualBaseClassCrash.cpp:14: internal compiler error: in
llvm_type_get_size, at llvm-types.c:70
------- Comment #1 From Chris Lattner 2003-10-27 11:53:13 -------
I forgot to mention that this is tested by:
test/Regression/C++Frontend/2003-10-27-VirtualBaseClassCrash.cpp
------- Comment #2 From Chris Lattner 2003-10-27 11:58:12 -------
This is now fixed in the C++ front-end.

First Last Prev Next    No search results available