Skip to content

Commit 2fd182a

Browse files
authored
Merge pull request swiftlang#76244 from swiftlang/elsh/do-not-print-package-name
Do not print package-name in non-package interface by default.
2 parents 45d7ea3 + be71aa3 commit 2fd182a

File tree

5 files changed

+10
-12
lines changed

5 files changed

+10
-12
lines changed

include/swift/Frontend/ModuleInterfaceSupport.h

-4
Original file line numberDiff line numberDiff line change
@@ -70,10 +70,6 @@ struct ModuleInterfaceOptions {
7070
/// Print imports that are missing from the source and used in API.
7171
bool PrintMissingImports = true;
7272

73-
/// If true, package-name flag is not printed in either public or private
74-
/// interface file.
75-
bool DisablePackageNameForNonPackageInterface = false;
76-
7773
/// Intentionally print invalid syntax into the file.
7874
bool DebugPrintInvalidSyntax = false;
7975

include/swift/Option/Options.td

+5-1
Original file line numberDiff line numberDiff line change
@@ -728,7 +728,11 @@ def disable_bridging_pch : Flag<["-"], "disable-bridging-pch">,
728728
def disable_print_package_name_for_non_package_interface :
729729
Flag<["-"], "disable-print-package-name-for-non-package-interface">,
730730
Flags<[FrontendOption, NoDriverOption, HelpHidden]>,
731-
HelpText<"Disable adding package name to public or private interface">;
731+
HelpText<"No op; package name is only printed in package interface by default">;
732+
def print_package_name_in_non_package_interface :
733+
Flag<["-"], "print-package-name-in-non-package-interface">,
734+
Flags<[FrontendOption, NoDriverOption, HelpHidden]>,
735+
HelpText<"Print package name in public or private interface">;
732736

733737
def lto : Joined<["-"], "lto=">,
734738
Flags<[FrontendOption, NoInteractiveOption]>,

lib/Frontend/CompilerInvocation.cpp

+2-3
Original file line numberDiff line numberDiff line change
@@ -525,7 +525,6 @@ static void ParseModuleInterfaceArgs(ModuleInterfaceOptions &Opts,
525525
Args.hasArg(OPT_debug_emit_invalid_swiftinterface_syntax);
526526
Opts.PrintMissingImports =
527527
!Args.hasArg(OPT_disable_print_missing_imports_in_module_interface);
528-
Opts.DisablePackageNameForNonPackageInterface |= Args.hasArg(OPT_disable_print_package_name_for_non_package_interface);
529528

530529
if (const Arg *A = Args.getLastArg(OPT_library_level)) {
531530
StringRef contents = A->getValue();
@@ -557,8 +556,8 @@ static bool ShouldIncludeModuleInterfaceArg(const Arg *A) {
557556

558557
static bool IsPackageInterfaceFlag(const Arg *A, ArgList &Args) {
559558
return A->getOption().matches(options::OPT_package_name) &&
560-
Args.hasArg(
561-
options::OPT_disable_print_package_name_for_non_package_interface);
559+
!Args.hasArg(
560+
options::OPT_print_package_name_in_non_package_interface);
562561
}
563562

564563
static bool IsPrivateInterfaceFlag(const Arg *A, ArgList &Args) {

test/ModuleInterface/package_interface.swift

-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ public enum PubEnum {
2323
case red, green
2424
}
2525

26-
// CHECK: -package-name barpkg
2726
// CHECK: public enum PubEnum {
2827
// CHECK: case red, green
2928
// CHECK: public static func == (a: Bar.PubEnum, b: Bar.PubEnum) -> Swift.Bool

test/ModuleInterface/package_interface_disable_package_name.swift renamed to test/ModuleInterface/print_package_name_in_non_package_interface.swift

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
// RUN: %empty-directory(%t)
22
// RUN: split-file %s %t
33

4-
/// Do not print package-name for public or private interfaces
4+
/// By default, package-name is only printed in package interface
55
// RUN: %target-build-swift -emit-module %t/Bar.swift -I %t \
66
// RUN: -module-name Bar -package-name foopkg \
77
// RUN: -enable-library-evolution -swift-version 6 \
88
// RUN: -package-name barpkg \
9-
// RUN: -Xfrontend -disable-print-package-name-for-non-package-interface \
109
// RUN: -emit-module-interface-path %t/Bar.swiftinterface \
1110
// RUN: -emit-private-module-interface-path %t/Bar.private.swiftinterface \
1211
// RUN: -emit-package-module-interface-path %t/Bar.package.swiftinterface
@@ -44,10 +43,11 @@
4443
// RUN: rm -rf %t/Bar.private.swiftinterface
4544
// RUN: rm -rf %t/Bar.package.swiftinterface
4645

47-
/// By default, -package-name is printed in all interfaces.
46+
/// Print -package-name in public or private interface.
4847
// RUN: %target-build-swift -emit-module %t/Bar.swift -I %t \
4948
// RUN: -module-name Bar -package-name barpkg \
5049
// RUN: -enable-library-evolution -swift-version 6 \
50+
// RUN: -Xfrontend -print-package-name-in-non-package-interface \
5151
// RUN: -emit-module-interface-path %t/Bar.swiftinterface \
5252
// RUN: -emit-private-module-interface-path %t/Bar.private.swiftinterface \
5353
// RUN: -emit-package-module-interface-path %t/Bar.package.swiftinterface

0 commit comments

Comments
 (0)