Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNathan Ridge2017-01-28 00:35:19 -0500
committerNathan Ridge2017-02-10 21:31:10 -0500
commit00046e9fb2e2feb338e19f580d4fc63125d0ce59 (patch)
treec4458de803a0029de2baf4fafcfa0dd43f2f1065
parent2363e0ac1118656294b5b19477ecb4aa1388abe5 (diff)
downloadorg.eclipse.cdt-00046e9fb2e2feb338e19f580d4fc63125d0ce59.tar.gz
org.eclipse.cdt-00046e9fb2e2feb338e19f580d4fc63125d0ce59.tar.xz
org.eclipse.cdt-00046e9fb2e2feb338e19f580d4fc63125d0ce59.zip
Bug 511108 - Update the set of supported feature reported in __has_feature
Since the last update, C++14 relaxed constexpr and a few new type traits have been implemented. Change-Id: I6fb780973c113820bfecf6a2bc7f1b7f5b1494e9
-rw-r--r--core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner/CPreprocessor.java10
1 files changed, 5 insertions, 5 deletions
diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner/CPreprocessor.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner/CPreprocessor.java
index 7f4188ada7..000e56913e 100644
--- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner/CPreprocessor.java
+++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner/CPreprocessor.java
@@ -2137,7 +2137,7 @@ public class CPreprocessor implements ILexerLog, IScanner, IAdaptable {
// missing: cxx_decltype_auto (bug 408470)
// missing: cxx_generic_lambdas
// missing: cxx_init_captures (bug 413527)
- // missing: cxx_relaxed_constexpr (bug 490475)
+ sSupportedFeatures.add("cxx_relaxed_constexpr");
// missing: cxx_return_type_deduction (bug 408470)
sSupportedFeatures.add("cxx_variable_templates");
@@ -2170,7 +2170,7 @@ public class CPreprocessor implements ILexerLog, IScanner, IAdaptable {
// missing: is_constructible
// missing: is_convertible_to
// missing: is_destructible
- // missing: is_empty
+ addTypeTraitPrimitive("is_empty", GCCKeywords.cp__is_empty);
addTypeTraitPrimitive("is_enum", GCCKeywords.cp__is_enum);
addTypeTraitPrimitive("is_final", GCCKeywords.cp__is_final);
// missing: is_interface_class
@@ -2180,11 +2180,11 @@ public class CPreprocessor implements ILexerLog, IScanner, IAdaptable {
// missing: is_nothrow_destructible
addTypeTraitPrimitive("is_pod", GCCKeywords.cp__is_pod);
addTypeTraitPrimitive("is_polymorphic", GCCKeywords.cp__is_polymorphic);
- // missing: is_standard_layout
- // missing: is_trivial
+ addTypeTraitPrimitive("is_standard_layout", GCCKeywords.cp__is_standard_layout);
+ addTypeTraitPrimitive("is_trivial", GCCKeywords.cp__is_trivial);
// missing: is_trivially_assignable
// missing: is_trivially_constructible
- // missing: is_trivially_copyable
+ addTypeTraitPrimitive("is_trivially_copyable", GCCKeywords.cp__is_trivially_copyable);
addTypeTraitPrimitive("is_union", GCCKeywords.cp__is_union);
addTypeTraitPrimitive("underlying_type", GCCKeywords.cp__underlying_type);
}

Back to the top