1 // RUN: %clang_cc1 -fsyntax-only -verify -std=c++17 %s
3 // Ensure that we don't crash if errors are suppressed by an error limit.
4 // RUN: not %clang_cc1 -fsyntax-only -std=c++17 -ferror-limit 1 %s
6 template <bool is_const
, typename tag_t
= void>
10 template <bool is_const
>
11 auto &val(const tv_val
<is_const
> &val
) { return val
.val(); } // expected-note {{possible target for call}}
14 template <bool is_const
>
21 Class
= 1, // expected-note 2 {{struct 'Class' is hidden}}
25 Class
*val_
; // expected-error {{must use 'struct' tag}}
26 void setClass(Class
*); // expected-error {{must use 'struct' tag}}
29 void Record::setClass(Class
*val
) { // expected-error {{variable has incomplete type 'void'}} \
30 // expected-error {{reference to overloaded function}} \
31 // expected-error {{expected ';' after top level declarator}}