1 // RUN: %clang_cc1 -x c++ -include %s -emit-llvm-only %s
2 // RUN: %clang_cc1 -x c++ -emit-pch %s -o %t
3 // RUN: %clang_cc1 -include-pch %t -emit-llvm-only %s
8 struct S00
{ virtual void f(); };
9 struct S01
{ virtual void f(); };
10 struct S02
{ virtual void f(); };
11 struct S03
{ virtual void f(); };
12 struct S04
{ virtual void f(); };
13 struct S05
{ virtual void f(); };
14 struct S06
{ virtual void f(); };
15 struct S07
{ virtual void f(); };
16 struct S08
{ virtual void f(); };
17 struct S09
{ virtual void f(); };
18 struct S10
{ virtual void f(); };
19 struct S11
{ virtual void f(); };
20 struct S12
{ virtual void f(); };
21 struct S13
{ virtual void f(); };
22 struct S14
{ virtual void f(); };
23 struct S15
{ virtual void f(); };
24 struct S16
{ virtual void f(); };
25 struct S17
{ virtual void f(); };
26 struct S18
{ virtual void f(); };
27 struct S19
{ virtual void f(); };
28 struct S20
{ virtual void f(); };
29 struct S21
{ virtual void f(); };
30 struct S22
{ virtual void f(); };
31 struct S23
{ virtual void f(); };
32 struct S24
{ virtual void f(); };
33 struct S25
{ virtual void f(); };
34 struct S26
{ virtual void f(); };
35 struct S27
{ virtual void f(); };
36 struct S28
{ virtual void f(); };
37 struct S29
{ virtual void f(); };
38 struct S30
{ virtual void f(); };
39 struct S31
{ virtual void f(); };
40 struct S32
{ virtual void f(); };
41 struct S33
{ virtual void f(); };
42 struct S34
{ virtual void f(); };
43 struct S35
{ virtual void f(); };
44 struct S36
{ virtual void f(); };
45 struct S37
{ virtual void f(); };
46 struct S38
{ virtual void f(); };
47 struct S39
{ virtual void f(); };
48 struct S40
{ virtual void f(); };
49 struct S41
{ virtual void f(); };
50 struct S42
{ virtual void f(); };
51 struct S43
{ virtual void f(); };
52 struct S44
{ virtual void f(); };
53 struct S45
{ virtual void f(); };
54 struct S46
{ virtual void f(); };
55 struct S47
{ virtual void f(); };
56 struct S48
{ virtual void f(); };
57 struct S49
{ virtual void f(); };
58 struct S50
{ virtual void f(); };
59 struct S51
{ virtual void f(); };
60 struct S52
{ virtual void f(); };
61 struct S53
{ virtual void f(); };
62 struct S54
{ virtual void f(); };
63 struct S55
{ virtual void f(); };
64 struct S56
{ virtual void f(); };
65 struct S57
{ virtual void f(); };
66 struct S58
{ virtual void f(); };
67 struct S59
{ virtual void f(); };
68 struct S60
{ virtual void f(); };
69 struct S61
{ virtual void f(); };
70 struct S62
{ virtual void f(); };
71 struct S63
{ virtual void f(); };
72 struct S64
{ virtual void f(); };
73 struct S65
{ virtual void f(); };
74 struct S66
{ virtual void f(); };
75 struct S67
{ virtual void f(); };
76 struct S68
{ virtual void f(); };
77 struct S69
{ virtual void f(); };
80 // Deserializing this key function should cause the key functions
81 // table to get resized.
82 virtual void f(S00
, S01
, S02
, S03
, S04
, S05
, S06
, S07
, S08
, S09
,
83 S10
, S11
, S12
, S13
, S14
, S15
, S16
, S17
, S18
, S19
,
84 S20
, S21
, S22
, S23
, S24
, S25
, S26
, S27
, S28
, S29
,
85 S30
, S31
, S32
, S33
, S34
, S35
, S36
, S37
, S38
, S39
,
86 S40
, S41
, S42
, S43
, S44
, S45
, S46
, S47
, S48
, S49
,
87 S50
, S51
, S52
, S53
, S54
, S55
, S56
, S57
, S58
, S59
,
88 S60
, S61
, S62
, S63
, S64
, S65
, S66
, S67
, S68
, S69
);
95 void h(Test
&t
) { t
.g(); }