alexfh added a comment.

In D143840#4147582 <https://reviews.llvm.org/D143840#4147582>, @joanahalili 
wrote:

> In D143840#4147234 <https://reviews.llvm.org/D143840#4147234>, @joanahalili 
> wrote:
>
>> Heads up: We are experiencing a series of clang crashes because of this 
>> commit.
>>
>> What we already have so far:
>>
>>   Unhandled DeclRefExpr
>>   UNREACHABLE executed at clang/lib/CodeGen/CGExpr.cpp:2958!
>>
>> We are now working on a reproducer.
>
> Here is our reproducer:
>
>   struct a {
>     enum { b };
>   };
>   struct c {
>     void *d;
>   };
>   struct e {
>     void f(void *);
>   };
>   template <typename g> struct h : g {
>     h(short, int);
>     virtual void i();
>   };
>   template <typename g> void h<g>::i() { e().f(c::d); }
>   struct j : h<c> {
>     j();
>   };
>   int k;
>   j::j() : h(a::b, k) {}

Thanks! This looks like a real problem. I'm going to revert the commit.

BTW, I managed to reduce your test case slightly more:

  struct f {
    void *g;
  };
  template <typename j> struct k : j {
    virtual void l(){ (void)f::g; }
  };
  k<f> q;

https://gcc.godbolt.org/z/fa33GYf9K


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D143840/new/

https://reviews.llvm.org/D143840

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to