You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Diagnostics] Support for all the flags of the warning treating group
This commit adds support for the warning treating option group, including the following options: -warnings-as-errors, -no-warnings-as-errors, -Werror, and -Wwarning.
Options in this group are now preserved as-is. It is forbidden to reorder or drop any of them.
These changes reflect the modifications made to the frontend in swiftlang/swift#74466.
Copy file name to clipboardExpand all lines: Sources/SwiftOptions/Options.swift
+11-2
Original file line number
Diff line number
Diff line change
@@ -640,7 +640,7 @@ extension Option {
640
640
publicstaticletnoStrictImplicitModuleContext:Option=Option("-no-strict-implicit-module-context",.flag, attributes:[.helpHidden,.frontend], helpText:"Disable the strict forwarding of compilation context to downstream implicit module dependencies")
641
641
publicstaticletnoToolchainStdlibRpath:Option=Option("-no-toolchain-stdlib-rpath",.flag, attributes:[.helpHidden,.doesNotAffectIncrementalBuild], helpText:"Do not add an rpath entry for the toolchain's standard library (default)")
642
642
publicstaticletnoVerifyEmittedModuleInterface:Option=Option("-no-verify-emitted-module-interface",.flag, attributes:[.frontend,.noInteractive,.doesNotAffectIncrementalBuild], helpText:"Don't check that module interfaces emitted during compilation typecheck")
643
-
publicstaticletnoWarningsAsErrors:Option=Option("-no-warnings-as-errors",.flag, attributes:[.frontend], helpText:"Don't treat warnings as errors")
643
+
publicstaticletnoWarningsAsErrors:Option=Option("-no-warnings-as-errors",.flag, attributes:[.frontend], helpText:"Treat warnings as warnings", group:.warningTreating)
644
644
publicstaticletnoWholeModuleOptimization:Option=Option("-no-whole-module-optimization",.flag, attributes:[.frontend,.noInteractive], helpText:"Disable optimizing input files together instead of individually")
645
645
publicstaticletdriverScanDependenciesNonLib:Option=Option("-nonlib-dependency-scanner",.flag, attributes:[.helpHidden], helpText:"Use calls to `swift-frontend -scan-dependencies` instead of dedicated dependency scanning library")
646
646
publicstaticletnostartfiles:Option=Option("-nostartfiles",.flag, attributes:[.helpHidden,.frontend,.noInteractive,.doesNotAffectIncrementalBuild], helpText:"Do not link in the Swift language startup routines")
@@ -872,14 +872,16 @@ extension Option {
872
872
publicstaticletwarnSwift3ObjcInferenceComplete:Option=Option("-warn-swift3-objc-inference-complete",.flag, attributes:[.helpHidden,.frontend,.doesNotAffectIncrementalBuild], helpText:"Deprecated, has no effect")
873
873
publicstaticletwarnSwift3ObjcInferenceMinimal:Option=Option("-warn-swift3-objc-inference-minimal",.flag, attributes:[.helpHidden,.frontend,.doesNotAffectIncrementalBuild], helpText:"Deprecated, has no effect")
publicstaticletwarningsAsErrors:Option=Option("-warnings-as-errors",.flag, attributes:[.frontend], helpText:"Treat warnings as errors")
875
+
publicstaticletwarningsAsErrors:Option=Option("-warnings-as-errors",.flag, attributes:[.frontend], helpText:"Treat warnings as errors", group:.warningTreating)
876
876
publicstaticletweakLinkAtTarget:Option=Option("-weak-link-at-target",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Weakly link symbols for declarations that were introduced at the deployment target. Symbols introduced before the deployment target are still strongly linked.")
877
+
publicstaticletWerror:Option=Option("-Werror",.separate, attributes:[.helpHidden,.frontend], metaVar:"<diagnostic_group>", helpText:"Treat this warning group as error", group:.warningTreating)
877
878
publicstaticletwholeModuleOptimization:Option=Option("-whole-module-optimization",.flag, attributes:[.frontend,.noInteractive], helpText:"Optimize input files together instead of individually")
publicstaticletworkingDirectory:Option=Option("-working-directory",.separate, metaVar:"<path>", helpText:"Resolve file paths relative to the specified directory")
884
+
publicstaticletWwarning:Option=Option("-Wwarning",.separate, attributes:[.helpHidden,.frontend], metaVar:"<diagnostic_group>", helpText:"Treat this warning group as warning", group:.warningTreating)
883
885
publicstaticletXcc:Option=Option("-Xcc",.separate, attributes:[.frontend], metaVar:"<arg>", helpText:"Pass <arg> to the C/C++/Objective-C compiler")
884
886
publicstaticletXclangLinker:Option=Option("-Xclang-linker",.separate, attributes:[.helpHidden], metaVar:"<arg>", helpText:"Pass <arg> to Clang when it is use for linking.")
885
887
publicstaticletXfrontend:Option=Option("-Xfrontend",.separate, attributes:[.helpHidden], metaVar:"<arg>", helpText:"Pass <arg> to the Swift frontend")
0 commit comments