summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang/lib/Lex/PPDirectives.cpp3
-rw-r--r--clang/test/Preprocessor/objc-pp.m4
2 files changed, 6 insertions, 1 deletions
diff --git a/clang/lib/Lex/PPDirectives.cpp b/clang/lib/Lex/PPDirectives.cpp
index ce68207eb3b..b38ff10c205 100644
--- a/clang/lib/Lex/PPDirectives.cpp
+++ b/clang/lib/Lex/PPDirectives.cpp
@@ -1075,7 +1075,8 @@ void Preprocessor::HandleIncludeNextDirective(Token &IncludeNextTok) {
/// HandleImportDirective - Implements #import.
///
void Preprocessor::HandleImportDirective(Token &ImportTok) {
- Diag(ImportTok, diag::ext_pp_import_directive);
+ if (!Features.ObjC1) // #import is standard for ObjC.
+ Diag(ImportTok, diag::ext_pp_import_directive);
return HandleIncludeDirective(ImportTok, 0, true);
}
diff --git a/clang/test/Preprocessor/objc-pp.m b/clang/test/Preprocessor/objc-pp.m
new file mode 100644
index 00000000000..0648acddf6e
--- /dev/null
+++ b/clang/test/Preprocessor/objc-pp.m
@@ -0,0 +1,4 @@
+// RUN: clang %s -fsyntax-only -verify -pedantic
+
+#import <stdio.h> // no warning.
+
OpenPOWER on IntegriCloud