template <typename T> struct Tuple { T* base; void AllocateMoreSpace(unsigned size) { base = (new T[1]) - size; } }; class ErrorInfo { virtual void getErrorMessage(); }; template class Tuple<ErrorInfo>;
body.3.ii: In member function 'void Tuple<T>::AllocateMoreSpace(unsigned int) [with T = ErrorInfo]': body.3.ii:11: instantiated from here body.3.ii:4: error: type mismatch in pointer plus expression struct ErrorInfo * struct ErrorInfo[1] * long unsigned int D.2076 = D.2044 + D.2075 body.3.ii:4: internal compiler error: verify_gimple failed Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. -- Summary: [4.3 Regression] Type verification failure with new expression Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-valid-code, ice-checking Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rguenth at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33709