From 9453db7b7a12235b5de913bb0d467976a5057b24 Mon Sep 17 00:00:00 2001 From: Louis D'hauwe Date: Fri, 17 Nov 2017 23:22:18 +0100 Subject: [PATCH] Upgrade to Swift 4.0 --- Swift VectorBoolean.xcodeproj/project.pbxproj | 30 ++++++++++++++----- .../OptionsViewController.swift | 2 +- .../ShapesTableViewController.swift | 2 +- .../VectorBoolean/FBGeometry.swift | 6 ++-- 4 files changed, 28 insertions(+), 12 deletions(-) diff --git a/Swift VectorBoolean.xcodeproj/project.pbxproj b/Swift VectorBoolean.xcodeproj/project.pbxproj index 99af63c..5ba7cfe 100644 --- a/Swift VectorBoolean.xcodeproj/project.pbxproj +++ b/Swift VectorBoolean.xcodeproj/project.pbxproj @@ -265,17 +265,17 @@ attributes = { LastSwiftMigration = 0700; LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 0800; + LastUpgradeCheck = 0910; ORGANIZATIONNAME = "Startside Softworks"; TargetAttributes = { 6356E1771B4CD83A00420351 = { CreatedOnToolsVersion = 6.4; - LastSwiftMigration = 0800; + LastSwiftMigration = 0910; ProvisioningStyle = Automatic; }; 6356E18C1B4CD83A00420351 = { CreatedOnToolsVersion = 6.4; - LastSwiftMigration = 0800; + LastSwiftMigration = 0910; TestTargetID = 6356E1771B4CD83A00420351; }; }; @@ -414,14 +414,20 @@ CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; @@ -462,14 +468,20 @@ CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; @@ -507,7 +519,8 @@ PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE = ""; PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 4.0; }; name = Debug; }; @@ -521,7 +534,8 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "com.starside.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 4.0; }; name = Release; }; @@ -539,7 +553,8 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "com.starside.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 4.0; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Swift VectorBoolean.app/Swift VectorBoolean"; }; name = Debug; @@ -554,7 +569,8 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "com.starside.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 4.0; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Swift VectorBoolean.app/Swift VectorBoolean"; }; name = Release; diff --git a/Swift VectorBoolean/OptionsViewController.swift b/Swift VectorBoolean/OptionsViewController.swift index 0c00719..09ee83d 100644 --- a/Swift VectorBoolean/OptionsViewController.swift +++ b/Swift VectorBoolean/OptionsViewController.swift @@ -60,7 +60,7 @@ class OptionsViewController: UIViewController { } } - func dismissVC() { + @objc func dismissVC() { self.dismiss(animated: true) { self.primeVC?.popClosed() } diff --git a/Swift VectorBoolean/ShapesTableViewController.swift b/Swift VectorBoolean/ShapesTableViewController.swift index 0300807..71a2462 100644 --- a/Swift VectorBoolean/ShapesTableViewController.swift +++ b/Swift VectorBoolean/ShapesTableViewController.swift @@ -44,7 +44,7 @@ class ShapesTableViewController: UITableViewController { } - func dismissVC() { + @objc func dismissVC() { self.dismiss(animated: true) { self.primeVC?.popClosed() } diff --git a/Swift VectorBoolean/VectorBoolean/FBGeometry.swift b/Swift VectorBoolean/VectorBoolean/FBGeometry.swift index 89dd246..400322f 100644 --- a/Swift VectorBoolean/VectorBoolean/FBGeometry.swift +++ b/Swift VectorBoolean/VectorBoolean/FBGeometry.swift @@ -259,9 +259,9 @@ func FBAreValuesCloseWithOptions(_ value1: Double, value2: Double, threshold: Do // Helper methods for angles // -let Two_π = 2.0 * M_PI -let π = M_PI -let Half_π = M_PI_2 +let Two_π = 2.0 * Double.pi +let π = Double.pi +let Half_π = Double.pi / 2 // Normalize the angle between 0 and 2 π