aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/clang/Basic/DiagnosticSemaKinds.td2
-rw-r--r--lib/Sema/SemaChecking.cpp6
-rw-r--r--test/Sema/builtins.c2
-rw-r--r--test/SemaObjC/exprs.m4
4 files changed, 3 insertions, 11 deletions
diff --git a/include/clang/Basic/DiagnosticSemaKinds.td b/include/clang/Basic/DiagnosticSemaKinds.td
index 5b58ae8ab9..c42a82b5f6 100644
--- a/include/clang/Basic/DiagnosticSemaKinds.td
+++ b/include/clang/Basic/DiagnosticSemaKinds.td
@@ -3607,8 +3607,6 @@ def err_block_returning_array_function : Error<
// CFString checking
def err_cfstring_literal_not_string_constant : Error<
"CFString literal is not a string constant">;
-def warn_cfstring_literal_contains_nul_character : Warning<
- "CFString literal contains NUL character">;
def warn_cfstring_truncated : Warning<
"input conversion stopped due to an input byte that does not "
"belong to the input codeset UTF-8">;
diff --git a/lib/Sema/SemaChecking.cpp b/lib/Sema/SemaChecking.cpp
index 24cf23bf43..de5a796410 100644
--- a/lib/Sema/SemaChecking.cpp
+++ b/lib/Sema/SemaChecking.cpp
@@ -552,12 +552,6 @@ bool Sema::CheckObjCString(Expr *Arg) {
return true;
}
- size_t NulPos = Literal->getString().find('\0');
- if (NulPos != llvm::StringRef::npos) {
- Diag(getLocationOfStringLiteralByte(Literal, NulPos),
- diag::warn_cfstring_literal_contains_nul_character)
- << Arg->getSourceRange();
- }
if (Literal->containsNonAsciiOrNull()) {
llvm::StringRef String = Literal->getString();
unsigned NumBytes = String.size();
diff --git a/test/Sema/builtins.c b/test/Sema/builtins.c
index 4072faa94b..64efefc7fd 100644
--- a/test/Sema/builtins.c
+++ b/test/Sema/builtins.c
@@ -27,7 +27,7 @@ int test6(float a, long double b) {
void test7() {
const void *X;
X = CFSTR("\242"); // expected-warning {{input conversion stopped}}
- X = CFSTR("\0"); // expected-warning {{ CFString literal contains NUL character }}
+ X = CFSTR("\0"); // no-warning
X = CFSTR(242); // expected-error {{ CFString literal is not a string constant }} expected-warning {{incompatible integer to pointer conversion}}
X = CFSTR("foo", "bar"); // expected-error {{too many arguments to function call}}
}
diff --git a/test/SemaObjC/exprs.m b/test/SemaObjC/exprs.m
index 13c34e5650..d7c122356f 100644
--- a/test/SemaObjC/exprs.m
+++ b/test/SemaObjC/exprs.m
@@ -9,12 +9,12 @@ Class test1(Class X) {
// rdar://6079877
void test2() {
id str = @"foo"
- "bar\0" // expected-warning {{literal contains NUL character}}
+ "bar\0" // no-warning
@"baz" " blarg";
id str2 = @"foo"
"bar"
@"baz"
- " b\0larg"; // expected-warning {{literal contains NUL character}}
+ " b\0larg"; // no-warning
if (@encode(int) == "foo") { } // expected-warning {{result of comparison against @encode is unspecified}}