On Thu, 21 Jun 2018, Jan Hubicka wrote:

> Hi
> with -flto -g -O2 -r -nostdlib -flinker-output=nolto-rel I get ICE on:

I can't reproduce the ICE on TOT with your patch applied.

> ./xg++ t.ii -B. -g -flto -O2 -r -nostdlib -flinker-output=nolto-rel 
cc1plus: warning: command line option ‘-flinker-output=nolto-rel’ is valid 
for LTO but not for C++
t.ii: In function ‘b::C::d b::e(j, h)’:
t.ii:20:75: warning: no return statement in function returning non-void 
[-Wreturn-type]
 template <typename j, typename h> b::C::d b::e(j m, h n) { c<a>::l(m, n); 
}
                                                                           
^


> class a;
> namespace b {
> template <typename> struct c;
> struct C {
>   typedef a d;
> };
> void e();
> }
> template <typename f> class g : f {
> public:
>   template <typename i> g(i);
> };
> class a {
>   long k;
> };
> namespace b {
> template <> struct c<a> { template <typename j, typename h> static a l(j, h); 
> };
> }
> template <typename j, typename h> b::C::d b::e(j m, h n) { c<a>::l(m, n); }
> void o() {
>   g<a> p = 0;
>   a r(b::e(r, p));
> }

Reply via email to