Internal compiler error: Error reporting routines re-entered
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
gcc-4.7 (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
I tried to compile the following code on Ubuntu 12.04, 64-bit version with command line "g++ -std=c++11 shared.cpp"
COMPILER OUTPUT:
Internal compiler error: Error reporting routines re-entered.
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:/
Preprocessed source stored into /tmp/cclhuYkr.out file, please attach this to your bugreport.
*******
shared.cpp
#include <memory>
#include <vector>
class myclass
{
public:
void add(std:
void add(myclass* p) { vec.push_
bool has(std:
bool has(myclass* p ) { for(auto& x : vec) { if(x.lock().get() == p) return true; } return false; }
std::vector<
};
int main()
{
return 0;
}
I get the same error message with std::unique_ptr:
#include <vector>
class A {};
class B {
std::unique_ ptr<A> e;
public:
B &operator=(const B &d2);
};
void fun(std: :unique_ ptr<B> &arg)
std::vector< B> v;
v.push_ back(std: :move(* arg));
{
}
Compiled with "g++-4.7 -c -O3 -g -std=c++0x -Wall -o crash.o crash.C" results in: //usr/share/ doc/gcc- 4.7/README. Bugs> for instructions.
‘
Internal compiler error: Error reporting routines re-entered.
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:/
Preprocessed source stored into /tmp/cclP69wn.out file, please attach this to your bugreport.
(Note the ‘ sign in the first line)