forked from OSchip/llvm-project
Mark variable template implementation as complete. Nearly all of the credit
here goes to Larisse Voufo. llvm-svn: 191549
This commit is contained in:
parent
8809a0c95e
commit
dca0c7a5fb
|
@ -961,7 +961,7 @@ static bool HasFeature(const Preprocessor &PP, const IdentifierInfo *II) {
|
|||
.Case("cxx_relaxed_constexpr", LangOpts.CPlusPlus1y)
|
||||
.Case("cxx_return_type_deduction", LangOpts.CPlusPlus1y)
|
||||
//.Case("cxx_runtime_array", LangOpts.CPlusPlus1y)
|
||||
//.Case("cxx_variable_templates", LangOpts.CPlusPlus1y)
|
||||
.Case("cxx_variable_templates", LangOpts.CPlusPlus1y)
|
||||
// Type traits
|
||||
.Case("has_nothrow_assign", LangOpts.CPlusPlus)
|
||||
.Case("has_nothrow_copy", LangOpts.CPlusPlus)
|
||||
|
@ -1036,6 +1036,7 @@ static bool HasExtension(const Preprocessor &PP, const IdentifierInfo *II) {
|
|||
.Case("cxx_rvalue_references", LangOpts.CPlusPlus)
|
||||
// C++1y features supported by other languages as extensions.
|
||||
.Case("cxx_binary_literals", true)
|
||||
.Case("cxx_variable_templates", true)
|
||||
.Default(false);
|
||||
}
|
||||
|
||||
|
|
|
@ -40,16 +40,17 @@ int has_reference_qualified_functions();
|
|||
int has_rvalue_references();
|
||||
#endif
|
||||
|
||||
// CHECK: has_local_type_template_args
|
||||
#if __has_extension(cxx_local_type_template_args)
|
||||
int has_local_type_template_args();
|
||||
#else
|
||||
int no_local_type_template_args();
|
||||
#endif
|
||||
|
||||
// CHECK: has_local_type_template_args
|
||||
|
||||
// CHECK: has_binary_literals
|
||||
#if __has_extension(cxx_binary_literals)
|
||||
int has_binary_literals();
|
||||
#endif
|
||||
|
||||
// CHECK: has_binary_literals
|
||||
// CHECK: has_variable_templates
|
||||
#if __has_extension(cxx_variable_templates)
|
||||
int has_variable_templates();
|
||||
#endif
|
||||
|
|
|
@ -376,3 +376,13 @@ int no_relaxed_constexpr();
|
|||
// CHECK-1Y: has_relaxed_constexpr
|
||||
// CHECK-11: no_relaxed_constexpr
|
||||
// CHECK-NO-11: no_relaxed_constexpr
|
||||
|
||||
#if __has_feature(cxx_variable_templates)
|
||||
int has_variable_templates();
|
||||
#else
|
||||
int no_variable_templates();
|
||||
#endif
|
||||
|
||||
// CHECK-1Y: has_variable_templates
|
||||
// CHECK-11: no_variable_templates
|
||||
// CHECK-NO-11: no_variable_templates
|
||||
|
|
|
@ -451,7 +451,7 @@ available.</p>
|
|||
<tr>
|
||||
<td>Variable templates</td>
|
||||
<td><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3651.pdf">N3651</a></td>
|
||||
<td class="partial" align="center">Partial</td>
|
||||
<td class="svn" align="center">SVN</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Relaxing requirements on constexpr functions</td>
|
||||
|
|
Loading…
Reference in New Issue