mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
[Sema] Enable require explicit availability by default for public modules
rdar://99929744
This commit is contained in:
@@ -729,7 +729,8 @@ static bool ParseLangArgs(LangOptions &Opts, ArgList &Args,
|
||||
diagLevel);
|
||||
}
|
||||
} else if (Args.getLastArg(OPT_require_explicit_availability,
|
||||
OPT_require_explicit_availability_target)) {
|
||||
OPT_require_explicit_availability_target) ||
|
||||
Opts.LibraryLevel == LibraryLevel::API) {
|
||||
Opts.RequireExplicitAvailability = DiagnosticBehavior::Warning;
|
||||
}
|
||||
|
||||
|
||||
@@ -10,6 +10,17 @@
|
||||
// RUN: -target %target-cpu-apple-macosx10.10 -require-explicit-availability=warn \
|
||||
// RUN: -require-explicit-availability-target "macOS 10.10"
|
||||
|
||||
/// Using -library-level api defaults to enabling warnings, without fixits.
|
||||
// RUN: sed -e "s/}} {{.*/}}/" < %s > %t/NoFixits.swift
|
||||
// RUN: %target-swift-frontend -typecheck -parse-as-library -verify %t/NoFixits.swift \
|
||||
// RUN: -target %target-cpu-apple-macosx10.10 -library-level api
|
||||
|
||||
/// Explicitly disable the diagnostic.
|
||||
// RUN: sed -e 's/xpected-warning/not-something-expected/' < %s > %t/None.swift
|
||||
// RUN: %target-swift-frontend -typecheck -parse-as-library -verify %t/None.swift \
|
||||
// RUN: -target %target-cpu-apple-macosx10.10 -require-explicit-availability=ignore \
|
||||
// RUN: -require-explicit-availability-target "macOS 10.10" -library-level api
|
||||
|
||||
/// Upgrade the diagnostic to an error.
|
||||
// RUN: sed -e "s/xpected-warning/xpected-error/" < %s > %t/Errors.swift
|
||||
// RUN: %target-swift-frontend -typecheck -parse-as-library -verify %t/Errors.swift \
|
||||
|
||||
Reference in New Issue
Block a user