Index: lib/Lex/PPMacroExpansion.cpp
===================================================================
--- lib/Lex/PPMacroExpansion.cpp	(revision 130137)
+++ lib/Lex/PPMacroExpansion.cpp	(working copy)
@@ -554,6 +554,9 @@
            .Case("ownership_holds", true)
            .Case("ownership_returns", true)
            .Case("ownership_takes", true)
+           // C1X features
+           .Case("c_static_assert", LangOpts.C1X)
+           .Case("c_generic_selection", LangOpts.C1X)
            // C++0x features
            .Case("cxx_attributes", LangOpts.CPlusPlus0x)
            .Case("cxx_auto_type", LangOpts.CPlusPlus0x)
Index: test/Lexer/has_feature_c1X.c
===================================================================
--- test/Lexer/has_feature_c1X.c	(revision 0)
+++ test/Lexer/has_feature_c1X.c	(revision 0)
@@ -0,0 +1,20 @@
+// RUN: %clang_cc1 -E -std=c1x %s -o - | FileCheck --check-prefix=CHECK-1X %s
+// RUN: %clang_cc1 -E %s -o - | FileCheck --check-prefix=CHECK-NO-1X %s
+
+#if __has_feature(c_static_assert)
+int has_static_assert();
+#else
+int no_static_assert();
+#endif
+
+// CHECK-1X: has_static_assert
+// CHECK-NO-1X: no_static_assert
+
+#if __has_feature(c_generic_selection)
+int has_generic_selection();
+#else
+int no_generic_selection();
+#endif
+
+// CHECK-1X: has_generic_selection
+// CHECK-NO-1X: no_generic_selection

Property changes on: test/Lexer/has_feature_c1X.c
___________________________________________________________________
Added: svn:mime-type
   + text/plain;charset=utf-8
Added: svn:eol-style
   + native

