llvm-project/clang/test/SemaCXX/crash-GH78388.cpp
Vlad Serebrennikov c58c6aac77
[clang][Sema] Add checks for validity of default ctor's class (#78898)
Fixes #10518
Fixes #67914
Fixes #78388
Also addresses the second example in #49103

This patch is based on suggestion from @cor3ntin in
https://github.com/llvm/llvm-project/issues/67914#issuecomment-1896011898
2024-02-09 20:59:02 +04:00

18 lines
779 B
C++

// RUN: %clang_cc1 -verify -std=c++98 %s
// RUN: %clang_cc1 -verify -std=c++11 %s
// RUN: %clang_cc1 -verify -std=c++14 %s
// RUN: %clang_cc1 -verify -std=c++17 %s
// RUN: %clang_cc1 -verify -std=c++20 %s
// RUN: %clang_cc1 -verify -std=c++23 %s
// RUN: %clang_cc1 -verify -std=c++2c %s
// https://github.com/llvm/llvm-project/issues/78388
typedef mbstate_t; // expected-error 0+ {{}} expected-note 0+ {{}}
template < typename , typename , typename >
class a // expected-error 0+ {{}}
class b { // expected-error 0+ {{}}
namespace { // expected-note 0+ {{}} expected-note 0+ {{}}
template < typename c > b::operator=() { // expected-error 0+ {{}} expected-note 0+ {{}}
struct :a< c, char, stdmbstate_t > d // expected-error 0+ {{}} expected-warning 0+ {{}}