mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
[cxx-interop] Suppress warning in non-arc Obj-C++
We have some arc specific casts in our generated headers that can trigger some warnings in non-arc Obj-C++ code. These casts are noop in that case so it is fine to have them there. And we do want them as we want the code to be compatible both with arc and non-arc code. rdar://163281971
This commit is contained in:
@@ -567,6 +567,8 @@ static void writePostImportPrologue(raw_ostream &os, ModuleDecl &M) {
|
||||
"#pragma clang diagnostic ignored \"-Wunknown-pragmas\"\n"
|
||||
"#pragma clang diagnostic ignored \"-Wnullability\"\n"
|
||||
"#pragma clang diagnostic ignored "
|
||||
"\"-Warc-bridge-casts-disallowed-in-nonarc\"\n"
|
||||
"#pragma clang diagnostic ignored "
|
||||
"\"-Wdollar-in-identifier-extension\"\n"
|
||||
"#pragma clang diagnostic ignored "
|
||||
"\"-Wunsafe-buffer-usage\"\n"
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
// RUN: %target-swift-frontend %s -module-name UseCoreFoundation -enable-experimental-cxx-interop -clang-header-expose-decls=all-public -typecheck -verify -emit-clang-header-path %t/UseCoreFoundation.h
|
||||
// RUN: %target-interop-build-clangxx -std=gnu++20 -fobjc-arc -c -x objective-c++-header %t/UseCoreFoundation.h -o %t/o.o
|
||||
// RUN: %target-interop-build-clangxx -Werror=arc-bridge-casts-disallowed-in-nonarc -std=gnu++20 -fno-objc-arc -c -x objective-c++-header %t/UseCoreFoundation.h -o %t/o.o
|
||||
|
||||
// REQUIRES: objc_interop
|
||||
|
||||
@@ -14,3 +15,7 @@ public class TestFoundationType {
|
||||
_bundle = bundle
|
||||
}
|
||||
}
|
||||
|
||||
public func getArray() -> [String] {
|
||||
[]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user