This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/53161] [4.8 Regression] ICE with weakref function and a function which takes vector types


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53161

Roman Kononov <roman at binarylife dot net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |roman at binarylife dot net

--- Comment #8 from Roman Kononov <roman at binarylife dot net> 2012-05-21 21:00:42 UTC ---
Another test case (without vectors):

$ cat test.cpp 
void gg();
static __typeof(gg) __gthrw_gg __attribute__((__weakref__("gg")));

template<typename R,typename... A>
struct data {
  template<typename Y,typename X>
  data(Y& y,R(X::*f)(A...));
};

template<typename Y,typename X,typename R,typename... A>
data<R,A...> make_data(Y& y,R(X::*f)(A...)) {
  return data<R,A...>(y,f);
}

void global(data<void>);

struct test {
  void bar() {}
  void doit() { global(make_data(*this,&test::bar)); }
};

$ g++ -std=c++11 -c test.cpp 
test.cpp:20:2: internal compiler error: vector VEC(ipa_ref_ptr,base) index
domain error, in ipa_remove_reference at ipa-ref.c:84
 };
  ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]