2010-06-30 00:52:24 +08:00
|
|
|
// RUN: %clang_cc1 -E -std=c++0x %s -o - | FileCheck --check-prefix=CHECK-0X %s
|
|
|
|
// RUN: %clang_cc1 -E %s -o - | FileCheck --check-prefix=CHECK-NO-0X %s
|
2010-01-13 16:31:49 +08:00
|
|
|
|
|
|
|
#if __has_feature(cxx_lambdas)
|
|
|
|
int lambdas();
|
|
|
|
#else
|
|
|
|
int no_lambdas();
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// CHECK-0X: no_lambdas
|
|
|
|
// CHECK-NO-0X: no_lambdas
|
|
|
|
|
|
|
|
|
|
|
|
#if __has_feature(cxx_nullptr)
|
2010-01-13 16:58:42 +08:00
|
|
|
int has_nullptr();
|
2010-01-13 16:31:49 +08:00
|
|
|
#else
|
|
|
|
int no_nullptr();
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// CHECK-0X: no_nullptr
|
|
|
|
// CHECK-NO-0X: no_nullptr
|
|
|
|
|
|
|
|
|
|
|
|
#if __has_feature(cxx_concepts)
|
|
|
|
int concepts();
|
|
|
|
#else
|
|
|
|
int no_concepts();
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// CHECK-0X: no_concepts
|
|
|
|
// CHECK-NO-0X: no_concepts
|
|
|
|
|
|
|
|
|
|
|
|
#if __has_feature(cxx_decltype)
|
2010-01-13 16:58:42 +08:00
|
|
|
int has_decltype();
|
2010-01-13 16:31:49 +08:00
|
|
|
#else
|
|
|
|
int no_decltype();
|
|
|
|
#endif
|
|
|
|
|
2010-01-13 16:58:42 +08:00
|
|
|
// CHECK-0X: has_decltype
|
2010-01-13 16:31:49 +08:00
|
|
|
// CHECK-NO-0X: no_decltype
|
|
|
|
|
|
|
|
|
|
|
|
#if __has_feature(cxx_auto_type)
|
|
|
|
int auto_type();
|
|
|
|
#else
|
|
|
|
int no_auto_type();
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// CHECK-0X: auto_type
|
|
|
|
// CHECK-NO-0X: no_auto_type
|
|
|
|
|
|
|
|
|
|
|
|
#if __has_feature(cxx_attributes)
|
|
|
|
int attributes();
|
|
|
|
#else
|
|
|
|
int no_attributes();
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// CHECK-0X: attributes
|
|
|
|
// CHECK-NO-0X: no_attributes
|
|
|
|
|
|
|
|
|
|
|
|
#if __has_feature(cxx_static_assert)
|
2010-01-13 16:58:42 +08:00
|
|
|
int has_static_assert();
|
2010-01-13 16:31:49 +08:00
|
|
|
#else
|
|
|
|
int no_static_assert();
|
|
|
|
#endif
|
|
|
|
|
2010-01-13 16:58:42 +08:00
|
|
|
// CHECK-0X: has_static_assert
|
2010-01-13 16:31:49 +08:00
|
|
|
// CHECK-NO-0X: no_static_assert
|
|
|
|
|
|
|
|
|
|
|
|
#if __has_feature(cxx_deleted_functions)
|
|
|
|
int deleted_functions();
|
|
|
|
#else
|
|
|
|
int no_deleted_functions();
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// CHECK-0X: deleted_functions
|
|
|
|
// CHECK-NO-0X: no_deleted_functions
|
|
|
|
|
|
|
|
|
|
|
|
#if __has_feature(cxx_rvalue_references)
|
|
|
|
int rvalue_references();
|
|
|
|
#else
|
|
|
|
int no_rvalue_references();
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// CHECK-0X: no_rvalue_references
|
|
|
|
// CHECK-NO-0X: no_rvalue_references
|
|
|
|
|
|
|
|
|
|
|
|
#if __has_feature(cxx_variadic_templates)
|
|
|
|
int variadic_templates();
|
|
|
|
#else
|
|
|
|
int no_variadic_templates();
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// CHECK-0X: no_variadic_templates
|
|
|
|
// CHECK-NO-0X: no_variadic_templates
|
2010-09-01 07:28:47 +08:00
|
|
|
|
|
|
|
|
|
|
|
#if __has_feature(cxx_inline_namespaces)
|
|
|
|
int inline_namespaces();
|
|
|
|
#else
|
|
|
|
int no_inline_namespaces();
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// CHECK-0X: inline_namespaces
|
|
|
|
// CHECK-NO-0X: inline_namespaces
|