================
@@ -0,0 +1,13 @@
+// Tests that invalid base-specifiers no longer crash the compiler.
+// RUN: %clang_cc1 -std=c++20 -fsyntax-only -verify %s
+
+class X; // expected-note {{forward declaration of 'X'}} expected-note 
{{forward declaration of 'X'}}
+
+class A : X { // expected-error {{base class has incomplete type}}
+};
+
+class Y : int { // expected-error {{expected class name}}
+};
+
+class Z : X*, virtual int { // expected-error {{base class has incomplete 
type}} expected-error {{expected class name}}
+};
----------------
cor3ntin wrote:

```suggestion

namespace GH147186 {

class X; // expected-note {{forward declaration of 'X'}} expected-note 
{{forward declaration of 'X'}}

class A : X { // expected-error {{base class has incomplete type}}
};

class Y : int { // expected-error {{expected class name}}
};

class Z : X*, virtual int { // expected-error {{base class has incomplete 
type}} expected-error {{expected class name}}
};
}
```

https://github.com/llvm/llvm-project/pull/147213
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to