[Bug middle-end/49938] New: [4.7 regression] ICE in interpret_loop_phi, at tree-scalar-evolution.c:1645
markus at trippelsdorf dot de
gcc-bugzilla@gcc.gnu.org
Mon Aug 1 20:56:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49938
Summary: [4.7 regression] ICE in interpret_loop_phi, at
tree-scalar-evolution.c:1645
Product: gcc
Version: 4.7.0
URL:
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: middle-end
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: markus@trippelsdorf.de
This ICE happened when building chromium.
Testcase reduced with multidelta:
% cat test.cpp
#include <vector>
#include <unistd.h>
typedef unsigned short uint16;
namespace base {
class StringPiece
{
public: typedef size_t size_type;
size_type size() const { return length_; } size_type
length_;
};
}
namespace net {
class DNSSECKeySet
{
bool CheckSignature (const base::StringPiece& name, const
base::StringPiece& zone, const
base::StringPiece& signature, uint16 rrtype,
const std::vector<base::StringPiece>& rrdatas);
};
}
template <class C> class scoped_array
{
public: typedef C element_type;
explicit scoped_array(C* p = __null):array_(p) {}
private: C* array_;
};
namespace net {
bool DNSSECKeySet::CheckSignature (const base::StringPiece& name,
const base::StringPiece& zone, const base::StringPiece& signature,
uint16 rrtype, const std::vector<base::StringPiece>& rrdatas)
{
unsigned signed_data_len = 0;
for (std::vector<base::StringPiece>::const_iterator i =
rrdatas.begin();
i != rrdatas.end(); i++) {
signed_data_len += 2;
signed_data_len += i->size();
}
scoped_array<unsigned char> signed_data(new unsigned
char[signed_data_len]);
}
}
% g++ -O test.cpp
test.cpp: In member function ‘bool net::DNSSECKeySet::CheckSignature(const
base::StringPiece&, const base::StringPiece&, const base::StringPiece&, uint16,
const std::vector<base::StringPiece>&)’:
test.cpp:31:7: internal compiler error: in interpret_loop_phi, at
tree-scalar-evolution.c:1645
Please submit a full bug report,
with preprocessed source if appropriate.
More information about the Gcc-bugs
mailing list