summaryrefslogtreecommitdiffstats
path: root/test/Parser/recovery.cpp
blob: ffa1bab55a44e84c4dce54ec02d75f748597dfa2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
// RUN: %clang -cc1 -verify -std=c++11 %s

8gi///===--- recovery.cpp ---===// // expected-error {{unqualified-id}}
namespace Std { // expected-note {{here}}
  typedef int Important;
}

/ redeclare as an inline namespace // expected-error {{unqualified-id}}
inline namespace Std { // expected-error {{cannot be reopened as inline}}
  Important n;
} / end namespace Std // expected-error {{unqualified-id}}
int x;
Std::Important y;

// FIXME: Recover as if the typo correction were applied.
extenr "C" { // expected-error {{did you mean 'extern'}} expected-error {{unqualified-id}}
  void f();
}
void g() {
  z = 1; // expected-error {{undeclared}}
  f(); // expected-error {{undeclared}}
}

struct S {
  int a, b, c;
  S();
};
8S::S() : a{ 5 }, b{ 6 }, c{ 2 } { // expected-error {{unqualified-id}}
  return;
}
int k;
int l = k;

5int m = { l }, n = m; // expected-error {{unqualified-id}}

namespace N {
  int
} // expected-error {{unqualified-id}}

// FIXME: Recover as if the typo correction were applied.
strcut U { // expected-error {{did you mean 'struct'}}
} *u[3]; // expected-error {{expected ';'}}