Browse Source

Merge topic 'fix-swiftmix-test-for-xcode-10.2'

b7b66919a3 SwiftMix: properly export SwiftMain method
cab5471a7b SwiftMix: Get rid of pointer types mismatch warning

Acked-by: Kitware Robot <[email protected]>
Merge-request: !3279
Brad King 6 years ago
parent
commit
1ee21c6ec5

+ 3 - 3
Tests/SwiftMix/CMain.c

@@ -1,5 +1,5 @@
-extern int ObjCMain(int argc, char const* const argv[]);
-int main(int argc, char* argv[])
+extern int ObjCMain(void);
+int main(void)
 {
-  return ObjCMain(argc, argv);
+  return ObjCMain();
 }

+ 1 - 0
Tests/SwiftMix/CMakeLists.txt

@@ -3,3 +3,4 @@ project(SwiftMix C Swift)
 
 add_executable(SwiftMix CMain.c ObjCMain.m SwiftMain.swift ObjC-Swift.h)
 set_property(TARGET SwiftMix PROPERTY XCODE_ATTRIBUTE_SWIFT_OBJC_BRIDGING_HEADER "ObjC-Swift.h")
+target_compile_options(SwiftMix PRIVATE "$<$<COMPILE_LANGUAGE:C>:-Werror=objc-method-access>")

+ 1 - 1
Tests/SwiftMix/ObjCMain.m

@@ -1,4 +1,4 @@
 #import "SwiftMix-Swift.h"
-int ObjCMain(int argc, char const* const argv[]) {
+int ObjCMain(void) {
   return [SwiftMainClass SwiftMain];
 }

+ 1 - 1
Tests/SwiftMix/SwiftMain.swift

@@ -1,7 +1,7 @@
 import Foundation
 
 @objc class SwiftMainClass : NSObject {
-  class func SwiftMain() -> Int32 {
+  @objc class func SwiftMain() -> Int32 {
     dump("Hello World!");
     return 0;
   }