blob: 9082ca848c6994ea8d7224dcddd70cc2cadb60d8 [file] [log] [blame]
Richard Smith0a715422013-05-07 19:32:56 +00001// RUN: %clang_cc1 -E -triple x86_64-linux-gnu -std=c++11 %s -o - | FileCheck --check-prefix=CHECK-11 %s
Douglas Gregora7130bf2013-05-02 05:28:32 +00002// RUN: %clang_cc1 -E -triple armv7-apple-darwin -std=c++11 %s -o - | FileCheck --check-prefix=CHECK-NO-TLS %s
Yunzhong Gao7704ba72015-08-01 02:55:59 +00003// RUN: %clang_cc1 -E -triple x86_64-linux-gnu -std=c++98 %s -o - | FileCheck --check-prefix=CHECK-NO-11 %s
Faisal Vali29336212015-05-22 02:57:28 +00004// RUN: %clang_cc1 -E -triple x86_64-linux-gnu -std=c++14 %s -o - | FileCheck --check-prefix=CHECK-14 %s
5// RUN: %clang_cc1 -E -triple x86_64-linux-gnu -std=c++1z %s -o - | FileCheck --check-prefix=CHECK-1Z %s
Alexis Huntaf4e28d2010-01-13 08:31:49 +00006
David Chisnallfa35df62012-01-16 17:27:18 +00007#if __has_feature(cxx_atomic)
8int has_atomic();
9#else
10int no_atomic();
11#endif
12
Faisal Vali29336212015-05-22 02:57:28 +000013// CHECK-1Z: has_atomic
14// CHECK-14: has_atomic
Richard Smith0a715422013-05-07 19:32:56 +000015// CHECK-11: has_atomic
16// CHECK-NO-11: no_atomic
David Chisnallfa35df62012-01-16 17:27:18 +000017
Alexis Huntaf4e28d2010-01-13 08:31:49 +000018#if __has_feature(cxx_lambdas)
Douglas Gregorc41d94e2011-01-26 15:36:03 +000019int has_lambdas();
Alexis Huntaf4e28d2010-01-13 08:31:49 +000020#else
21int no_lambdas();
22#endif
23
Faisal Vali29336212015-05-22 02:57:28 +000024// CHECK-1Z: has_lambdas
25// CHECK-14: has_lambdas
Richard Smith0a715422013-05-07 19:32:56 +000026// CHECK-11: has_lambdas
27// CHECK-NO-11: no_lambdas
Alexis Huntaf4e28d2010-01-13 08:31:49 +000028
29
30#if __has_feature(cxx_nullptr)
Alexis Hunt10e2f722010-01-13 08:58:42 +000031int has_nullptr();
Alexis Huntaf4e28d2010-01-13 08:31:49 +000032#else
33int no_nullptr();
34#endif
35
Faisal Vali29336212015-05-22 02:57:28 +000036// CHECK-1Z: has_nullptr
37// CHECK-14: has_nullptr
Richard Smith0a715422013-05-07 19:32:56 +000038// CHECK-11: has_nullptr
39// CHECK-NO-11: no_nullptr
Alexis Huntaf4e28d2010-01-13 08:31:49 +000040
41
Alexis Huntaf4e28d2010-01-13 08:31:49 +000042#if __has_feature(cxx_decltype)
Alexis Hunt10e2f722010-01-13 08:58:42 +000043int has_decltype();
Alexis Huntaf4e28d2010-01-13 08:31:49 +000044#else
45int no_decltype();
46#endif
47
Faisal Vali29336212015-05-22 02:57:28 +000048// CHECK-1Z: has_decltype
49// CHECK-14: has_decltype
Richard Smith0a715422013-05-07 19:32:56 +000050// CHECK-11: has_decltype
51// CHECK-NO-11: no_decltype
Alexis Huntaf4e28d2010-01-13 08:31:49 +000052
53
Douglas Gregor05989622012-04-10 20:00:33 +000054#if __has_feature(cxx_decltype_incomplete_return_types)
55int has_decltype_incomplete_return_types();
56#else
57int no_decltype_incomplete_return_types();
58#endif
59
Faisal Vali29336212015-05-22 02:57:28 +000060// CHECK-1Z: has_decltype_incomplete_return_types
61// CHECK-14: has_decltype_incomplete_return_types
Richard Smith0a715422013-05-07 19:32:56 +000062// CHECK-11: has_decltype_incomplete_return_types
63// CHECK-NO-11: no_decltype_incomplete_return_types
Douglas Gregor05989622012-04-10 20:00:33 +000064
65
Alexis Huntaf4e28d2010-01-13 08:31:49 +000066#if __has_feature(cxx_auto_type)
Douglas Gregorc41d94e2011-01-26 15:36:03 +000067int has_auto_type();
Alexis Huntaf4e28d2010-01-13 08:31:49 +000068#else
69int no_auto_type();
70#endif
71
Faisal Vali29336212015-05-22 02:57:28 +000072// CHECK-1Z: has_auto_type
73// CHECK-14: has_auto_type
Richard Smith0a715422013-05-07 19:32:56 +000074// CHECK-11: has_auto_type
75// CHECK-NO-11: no_auto_type
Alexis Huntaf4e28d2010-01-13 08:31:49 +000076
77
Richard Smith13f68cf2011-04-03 14:12:46 +000078#if __has_feature(cxx_trailing_return)
79int has_trailing_return();
80#else
81int no_trailing_return();
82#endif
83
Faisal Vali29336212015-05-22 02:57:28 +000084// CHECK-1Z: has_trailing_return
85// CHECK-14: has_trailing_return
Richard Smith0a715422013-05-07 19:32:56 +000086// CHECK-11: has_trailing_return
87// CHECK-NO-11: no_trailing_return
Richard Smith13f68cf2011-04-03 14:12:46 +000088
89
Alexis Huntaf4e28d2010-01-13 08:31:49 +000090#if __has_feature(cxx_attributes)
Douglas Gregorc41d94e2011-01-26 15:36:03 +000091int has_attributes();
Alexis Huntaf4e28d2010-01-13 08:31:49 +000092#else
93int no_attributes();
94#endif
95
Faisal Vali29336212015-05-22 02:57:28 +000096// CHECK-1Z: has_attributes
97// CHECK-14: has_attributes
Richard Smith0a715422013-05-07 19:32:56 +000098// CHECK-11: has_attributes
99// CHECK-NO-11: no_attributes
Alexis Huntaf4e28d2010-01-13 08:31:49 +0000100
101
102#if __has_feature(cxx_static_assert)
Alexis Hunt10e2f722010-01-13 08:58:42 +0000103int has_static_assert();
Alexis Huntaf4e28d2010-01-13 08:31:49 +0000104#else
105int no_static_assert();
106#endif
107
Faisal Vali29336212015-05-22 02:57:28 +0000108// CHECK-1Z: has_static_assert
109// CHECK-14: has_static_assert
Richard Smith0a715422013-05-07 19:32:56 +0000110// CHECK-11: has_static_assert
111// CHECK-NO-11: no_static_assert
Alexis Huntaf4e28d2010-01-13 08:31:49 +0000112
Alexis Huntaf4e28d2010-01-13 08:31:49 +0000113#if __has_feature(cxx_deleted_functions)
Douglas Gregorc41d94e2011-01-26 15:36:03 +0000114int has_deleted_functions();
Alexis Huntaf4e28d2010-01-13 08:31:49 +0000115#else
116int no_deleted_functions();
117#endif
118
Faisal Vali29336212015-05-22 02:57:28 +0000119// CHECK-1Z: has_deleted_functions
120// CHECK-14: has_deleted_functions
Richard Smith0a715422013-05-07 19:32:56 +0000121// CHECK-11: has_deleted_functions
122// CHECK-NO-11: no_deleted_functions
Alexis Huntaf4e28d2010-01-13 08:31:49 +0000123
Douglas Gregor3c469762011-11-01 01:19:34 +0000124#if __has_feature(cxx_defaulted_functions)
125int has_defaulted_functions();
126#else
127int no_defaulted_functions();
128#endif
129
Faisal Vali29336212015-05-22 02:57:28 +0000130// CHECK-1Z: has_defaulted_functions
131// CHECK-14: has_defaulted_functions
Richard Smith0a715422013-05-07 19:32:56 +0000132// CHECK-11: has_defaulted_functions
133// CHECK-NO-11: no_defaulted_functions
Alexis Huntaf4e28d2010-01-13 08:31:49 +0000134
135#if __has_feature(cxx_rvalue_references)
Douglas Gregorc41d94e2011-01-26 15:36:03 +0000136int has_rvalue_references();
Alexis Huntaf4e28d2010-01-13 08:31:49 +0000137#else
138int no_rvalue_references();
139#endif
140
Faisal Vali29336212015-05-22 02:57:28 +0000141// CHECK-1Z: has_rvalue_references
142// CHECK-14: has_rvalue_references
Richard Smith0a715422013-05-07 19:32:56 +0000143// CHECK-11: has_rvalue_references
144// CHECK-NO-11: no_rvalue_references
Alexis Huntaf4e28d2010-01-13 08:31:49 +0000145
146
147#if __has_feature(cxx_variadic_templates)
Douglas Gregorc41d94e2011-01-26 15:36:03 +0000148int has_variadic_templates();
Alexis Huntaf4e28d2010-01-13 08:31:49 +0000149#else
150int no_variadic_templates();
151#endif
152
Faisal Vali29336212015-05-22 02:57:28 +0000153// CHECK-1Z: has_variadic_templates
154// CHECK-14: has_variadic_templates
Richard Smith0a715422013-05-07 19:32:56 +0000155// CHECK-11: has_variadic_templates
156// CHECK-NO-11: no_variadic_templates
Sebastian Redla93bb5b2010-08-31 23:28:47 +0000157
158
159#if __has_feature(cxx_inline_namespaces)
Douglas Gregorc41d94e2011-01-26 15:36:03 +0000160int has_inline_namespaces();
Sebastian Redla93bb5b2010-08-31 23:28:47 +0000161#else
162int no_inline_namespaces();
163#endif
164
Faisal Vali29336212015-05-22 02:57:28 +0000165// CHECK-1Z: has_inline_namespaces
166// CHECK-14: has_inline_namespaces
Richard Smith0a715422013-05-07 19:32:56 +0000167// CHECK-11: has_inline_namespaces
168// CHECK-NO-11: no_inline_namespaces
Douglas Gregor56d5f0a2011-01-26 21:25:54 +0000169
Richard Smith9bc6eed2011-04-15 15:14:40 +0000170
171#if __has_feature(cxx_range_for)
172int has_range_for();
173#else
174int no_range_for();
175#endif
176
Faisal Vali29336212015-05-22 02:57:28 +0000177// CHECK-1Z: has_range_for
178// CHECK-14: has_range_for
Richard Smith0a715422013-05-07 19:32:56 +0000179// CHECK-11: has_range_for
180// CHECK-NO-11: no_range_for
Richard Smith9bc6eed2011-04-15 15:14:40 +0000181
182
Douglas Gregor56d5f0a2011-01-26 21:25:54 +0000183#if __has_feature(cxx_reference_qualified_functions)
184int has_reference_qualified_functions();
185#else
186int no_reference_qualified_functions();
187#endif
188
Faisal Vali29336212015-05-22 02:57:28 +0000189// CHECK-1Z: has_reference_qualified_functions
190// CHECK-14: has_reference_qualified_functions
Richard Smith0a715422013-05-07 19:32:56 +0000191// CHECK-11: has_reference_qualified_functions
192// CHECK-NO-11: no_reference_qualified_functions
Douglas Gregor56d5f0a2011-01-26 21:25:54 +0000193
Douglas Gregor7115aee2011-02-05 20:35:30 +0000194#if __has_feature(cxx_default_function_template_args)
195int has_default_function_template_args();
196#else
197int no_default_function_template_args();
198#endif
199
Faisal Vali29336212015-05-22 02:57:28 +0000200// CHECK-1Z: has_default_function_template_args
201// CHECK-14: has_default_function_template_args
Richard Smith0a715422013-05-07 19:32:56 +0000202// CHECK-11: has_default_function_template_args
203// CHECK-NO-11: no_default_function_template_args
Douglas Gregor7115aee2011-02-05 20:35:30 +0000204
Sebastian Redlc17003c2011-03-15 21:17:12 +0000205#if __has_feature(cxx_noexcept)
206int has_noexcept();
207#else
208int no_noexcept();
209#endif
210
Faisal Vali29336212015-05-22 02:57:28 +0000211// CHECK-1Z: has_noexcept
212// CHECK-14: has_noexcept
Richard Smith0a715422013-05-07 19:32:56 +0000213// CHECK-11: has_noexcept
214// CHECK-NO-11: no_noexcept
Sebastian Redlc17003c2011-03-15 21:17:12 +0000215
Anders Carlsson69f1f932011-03-25 15:04:23 +0000216#if __has_feature(cxx_override_control)
217int has_override_control();
218#else
219int no_override_control();
220#endif
221
Faisal Vali29336212015-05-22 02:57:28 +0000222// CHECK-1Z: has_override_control
223// CHECK-14: has_override_control
Richard Smith0a715422013-05-07 19:32:56 +0000224// CHECK-11: has_override_control
225// CHECK-NO-11: no_override_control
Richard Smith3f1b5d02011-05-05 21:57:07 +0000226
227#if __has_feature(cxx_alias_templates)
228int has_alias_templates();
229#else
230int no_alias_templates();
231#endif
232
Faisal Vali29336212015-05-22 02:57:28 +0000233// CHECK-1Z: has_alias_templates
234// CHECK-14: has_alias_templates
Richard Smith0a715422013-05-07 19:32:56 +0000235// CHECK-11: has_alias_templates
236// CHECK-NO-11: no_alias_templates
Sebastian Redle9c4e842011-09-04 18:14:28 +0000237
238#if __has_feature(cxx_implicit_moves)
239int has_implicit_moves();
240#else
241int no_implicit_moves();
242#endif
243
Faisal Vali29336212015-05-22 02:57:28 +0000244// CHECK-1Z: has_implicit_moves
245// CHECK-14: has_implicit_moves
Richard Smith0a715422013-05-07 19:32:56 +0000246// CHECK-11: has_implicit_moves
247// CHECK-NO-11: no_implicit_moves
Peter Collingbourne60188eb2011-10-14 23:44:46 +0000248
249#if __has_feature(cxx_alignas)
250int has_alignas();
251#else
252int no_alignas();
253#endif
254
Faisal Vali29336212015-05-22 02:57:28 +0000255// CHECK-1Z: has_alignas
256// CHECK-14: has_alignas
Richard Smith0a715422013-05-07 19:32:56 +0000257// CHECK-11: has_alignas
258// CHECK-NO-11: no_alignas
Douglas Gregora7efb882011-11-01 01:23:44 +0000259
Nico Weber736a9932014-12-03 01:25:49 +0000260#if __has_feature(cxx_alignof)
261int has_alignof();
262#else
263int no_alignof();
264#endif
265
Faisal Vali29336212015-05-22 02:57:28 +0000266// CHECK-1Z: has_alignof
267// CHECK-14: has_alignof
Nico Weber736a9932014-12-03 01:25:49 +0000268// CHECK-11: has_alignof
269// CHECK-NO-11: no_alignof
270
Douglas Gregora7efb882011-11-01 01:23:44 +0000271#if __has_feature(cxx_raw_string_literals)
272int has_raw_string_literals();
273#else
274int no_raw_string_literals();
275#endif
276
Faisal Vali29336212015-05-22 02:57:28 +0000277// CHECK-1Z: has_raw_string_literals
278// CHECK-14: has_raw_string_literals
Richard Smith0a715422013-05-07 19:32:56 +0000279// CHECK-11: has_raw_string_literals
280// CHECK-NO-11: no_raw_string_literals
Douglas Gregora7efb882011-11-01 01:23:44 +0000281
282#if __has_feature(cxx_unicode_literals)
283int has_unicode_literals();
284#else
285int no_unicode_literals();
286#endif
287
Faisal Vali29336212015-05-22 02:57:28 +0000288// CHECK-1Z: has_unicode_literals
289// CHECK-14: has_unicode_literals
Richard Smith0a715422013-05-07 19:32:56 +0000290// CHECK-11: has_unicode_literals
291// CHECK-NO-11: no_unicode_literals
Richard Smith1cb2af02012-02-14 22:56:17 +0000292
293#if __has_feature(cxx_constexpr)
294int has_constexpr();
295#else
296int no_constexpr();
297#endif
298
Faisal Vali29336212015-05-22 02:57:28 +0000299// CHECK-1Z: has_constexpr
300// CHECK-14: has_constexpr
Richard Smith0a715422013-05-07 19:32:56 +0000301// CHECK-11: has_constexpr
302// CHECK-NO-11: no_constexpr
Sebastian Redld89c2182012-02-25 20:51:27 +0000303
Richard Smith5e29dd32017-01-20 00:45:35 +0000304#if __has_feature(cxx_constexpr_string_builtins)
305int has_constexpr_string_builtins();
306#else
307int no_constexpr_string_builtins();
308#endif
309
310// CHECK-1Z: has_constexpr_string_builtins
311// CHECK-14: has_constexpr_string_builtins
312// CHECK-11: has_constexpr_string_builtins
313// CHECK-NO-11: no_constexpr_string_builtins
314
Sebastian Redld89c2182012-02-25 20:51:27 +0000315#if __has_feature(cxx_generalized_initializers)
316int has_generalized_initializers();
317#else
318int no_generalized_initializers();
319#endif
320
Faisal Vali29336212015-05-22 02:57:28 +0000321// CHECK-1Z: has_generalized_initializers
322// CHECK-14: has_generalized_initializers
Richard Smith0a715422013-05-07 19:32:56 +0000323// CHECK-11: has_generalized_initializers
324// CHECK-NO-11: no_generalized_initializers
Richard Smith522fa532012-03-03 23:51:05 +0000325
326#if __has_feature(cxx_unrestricted_unions)
327int has_unrestricted_unions();
328#else
329int no_unrestricted_unions();
330#endif
331
Faisal Vali29336212015-05-22 02:57:28 +0000332// CHECK-1Z: has_unrestricted_unions
333// CHECK-14: has_unrestricted_unions
Richard Smith0a715422013-05-07 19:32:56 +0000334// CHECK-11: has_unrestricted_unions
335// CHECK-NO-11: no_unrestricted_unions
Richard Smith50231882012-03-09 08:41:27 +0000336
337#if __has_feature(cxx_user_literals)
338int has_user_literals();
339#else
340int no_user_literals();
341#endif
342
Faisal Vali29336212015-05-22 02:57:28 +0000343// CHECK-1Z: has_user_literals
344// CHECK-14: has_user_literals
Richard Smith0a715422013-05-07 19:32:56 +0000345// CHECK-11: has_user_literals
346// CHECK-NO-11: no_user_literals
Douglas Gregor97818932012-04-04 00:48:39 +0000347
348#if __has_feature(cxx_local_type_template_args)
349int has_local_type_template_args();
350#else
351int no_local_type_template_args();
352#endif
353
Faisal Vali29336212015-05-22 02:57:28 +0000354// CHECK-1Z: has_local_type_template_args
355// CHECK-14: has_local_type_template_args
Richard Smith0a715422013-05-07 19:32:56 +0000356// CHECK-11: has_local_type_template_args
357// CHECK-NO-11: no_local_type_template_args
Richard Smith25b555a2013-04-19 17:00:31 +0000358
359#if __has_feature(cxx_inheriting_constructors)
360int has_inheriting_constructors();
361#else
362int no_inheriting_constructors();
363#endif
364
Faisal Vali29336212015-05-22 02:57:28 +0000365// CHECK-1Z: has_inheriting_constructors
366// CHECK-14: has_inheriting_constructors
Richard Smith0a715422013-05-07 19:32:56 +0000367// CHECK-11: has_inheriting_constructors
368// CHECK-NO-11: no_inheriting_constructors
Richard Smith25b555a2013-04-19 17:00:31 +0000369
370#if __has_feature(cxx_thread_local)
371int has_thread_local();
372#else
373int no_thread_local();
374#endif
375
Faisal Vali29336212015-05-22 02:57:28 +0000376// CHECK-1Z: has_thread_local
377// CHECK-14: has_thread_local
Richard Smith0a715422013-05-07 19:32:56 +0000378// CHECK-11: has_thread_local
379// CHECK-NO-11: no_thread_local
Douglas Gregora7130bf2013-05-02 05:28:32 +0000380// CHECK-NO-TLS: no_thread_local
Richard Smith0a715422013-05-07 19:32:56 +0000381
Faisal Vali29336212015-05-22 02:57:28 +0000382// === C++14 features ===
Richard Smith0a715422013-05-07 19:32:56 +0000383
384#if __has_feature(cxx_binary_literals)
385int has_binary_literals();
386#else
387int no_binary_literals();
388#endif
389
Faisal Vali29336212015-05-22 02:57:28 +0000390// CHECK-1Z: has_binary_literals
391// CHECK-14: has_binary_literals
Richard Smith0a715422013-05-07 19:32:56 +0000392// CHECK-11: no_binary_literals
393// CHECK-NO-11: no_binary_literals
394
395#if __has_feature(cxx_aggregate_nsdmi)
396int has_aggregate_nsdmi();
397#else
398int no_aggregate_nsdmi();
399#endif
400
Faisal Vali29336212015-05-22 02:57:28 +0000401// CHECK-1Z: has_aggregate_nsdmi
402// CHECK-14: has_aggregate_nsdmi
Richard Smith0a715422013-05-07 19:32:56 +0000403// CHECK-11: no_aggregate_nsdmi
404// CHECK-NO-11: no_aggregate_nsdmi
Richard Smith9155be12013-05-12 03:09:35 +0000405
406#if __has_feature(cxx_return_type_deduction)
407int has_return_type_deduction();
408#else
409int no_return_type_deduction();
410#endif
411
Faisal Vali29336212015-05-22 02:57:28 +0000412// CHECK-1Z: has_return_type_deduction
413// CHECK-14: has_return_type_deduction
Richard Smith9155be12013-05-12 03:09:35 +0000414// CHECK-11: no_return_type_deduction
415// CHECK-NO-11: no_return_type_deduction
Richard Smithc0f7b812013-07-24 17:41:31 +0000416
417#if __has_feature(cxx_contextual_conversions)
418int has_contextual_conversions();
419#else
420int no_contextual_conversions();
421#endif
422
Faisal Vali29336212015-05-22 02:57:28 +0000423// CHECK-1Z: has_contextual_conversions
424// CHECK-14: has_contextual_conversions
Richard Smithc0f7b812013-07-24 17:41:31 +0000425// CHECK-11: no_contextual_conversions
426// CHECK-NO-11: no_contextual_conversions
427
428#if __has_feature(cxx_relaxed_constexpr)
429int has_relaxed_constexpr();
430#else
431int no_relaxed_constexpr();
432#endif
433
Faisal Vali29336212015-05-22 02:57:28 +0000434// CHECK-1Z: has_relaxed_constexpr
435// CHECK-14: has_relaxed_constexpr
Richard Smithc0f7b812013-07-24 17:41:31 +0000436// CHECK-11: no_relaxed_constexpr
437// CHECK-NO-11: no_relaxed_constexpr
Richard Smithdca0c7a2013-09-27 20:19:41 +0000438
439#if __has_feature(cxx_variable_templates)
440int has_variable_templates();
441#else
442int no_variable_templates();
443#endif
444
Faisal Vali29336212015-05-22 02:57:28 +0000445// CHECK-1Z: has_variable_templates
446// CHECK-14: has_variable_templates
Richard Smithdca0c7a2013-09-27 20:19:41 +0000447// CHECK-11: no_variable_templates
448// CHECK-NO-11: no_variable_templates
Richard Smithb438e622013-09-28 04:37:56 +0000449
450#if __has_feature(cxx_init_captures)
451int has_init_captures();
452#else
453int no_init_captures();
454#endif
455
Faisal Vali29336212015-05-22 02:57:28 +0000456// CHECK-1Z: has_init_captures
457// CHECK-14: has_init_captures
Richard Smithb438e622013-09-28 04:37:56 +0000458// CHECK-11: no_init_captures
459// CHECK-NO-11: no_init_captures
Richard Smith6d540142014-05-09 21:08:59 +0000460
461#if __has_feature(cxx_decltype_auto)
462int has_decltype_auto();
463#else
464int no_decltype_auto();
465#endif
466
Faisal Vali29336212015-05-22 02:57:28 +0000467// CHECK-1Z: has_decltype_auto
468// CHECK-14: has_decltype_auto
Richard Smith6d540142014-05-09 21:08:59 +0000469// CHECK-11: no_decltype_auto
470// CHECK-NO-11: no_decltype_auto
471
472#if __has_feature(cxx_generic_lambdas)
473int has_generic_lambdas();
474#else
475int no_generic_lambdas();
476#endif
477
Faisal Vali29336212015-05-22 02:57:28 +0000478// CHECK-1Z: has_generic_lambdas
479// CHECK-14: has_generic_lambdas
Richard Smith6d540142014-05-09 21:08:59 +0000480// CHECK-11: no_generic_lambdas
481// CHECK-NO-11: no_generic_lambdas