Skip to content

Commit f1d2da1

Browse files
authored
Merge pull request swiftlang#76304 from swiftlang/revert-76244-elsh/do-not-print-package-name
Revert "Do not print package-name in non-package interface by default."
2 parents e3ea4e1 + 4b8e76f commit f1d2da1

File tree

5 files changed

+12
-10
lines changed

5 files changed

+12
-10
lines changed

include/swift/Frontend/ModuleInterfaceSupport.h

+4
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,10 @@ 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+
7377
/// Intentionally print invalid syntax into the file.
7478
bool DebugPrintInvalidSyntax = false;
7579

include/swift/Option/Options.td

+1-5
Original file line numberDiff line numberDiff line change
@@ -735,11 +735,7 @@ def disable_bridging_pch : Flag<["-"], "disable-bridging-pch">,
735735
def disable_print_package_name_for_non_package_interface :
736736
Flag<["-"], "disable-print-package-name-for-non-package-interface">,
737737
Flags<[FrontendOption, NoDriverOption, HelpHidden]>,
738-
HelpText<"No op; package name is only printed in package interface by default">;
739-
def print_package_name_in_non_package_interface :
740-
Flag<["-"], "print-package-name-in-non-package-interface">,
741-
Flags<[FrontendOption, NoDriverOption, HelpHidden]>,
742-
HelpText<"Print package name in public or private interface">;
738+
HelpText<"Disable adding package name to public or private interface">;
743739

744740
def lto : Joined<["-"], "lto=">,
745741
Flags<[FrontendOption, NoInteractiveOption]>,

lib/Frontend/CompilerInvocation.cpp

+3-2
Original file line numberDiff line numberDiff line change
@@ -525,6 +525,7 @@ 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);
528529

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

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

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

test/ModuleInterface/package_interface.swift

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

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

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

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

4-
/// By default, package-name is only printed in package interface
4+
/// Do not print package-name for public or private interfaces
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 \
910
// RUN: -emit-module-interface-path %t/Bar.swiftinterface \
1011
// RUN: -emit-private-module-interface-path %t/Bar.private.swiftinterface \
1112
// RUN: -emit-package-module-interface-path %t/Bar.package.swiftinterface
@@ -43,11 +44,10 @@
4344
// RUN: rm -rf %t/Bar.private.swiftinterface
4445
// RUN: rm -rf %t/Bar.package.swiftinterface
4546

46-
/// Print -package-name in public or private interface.
47+
/// By default, -package-name is printed in all interfaces.
4748
// RUN: %target-build-swift -emit-module %t/Bar.swift -I %t \
4849
// RUN: -module-name Bar -package-name barpkg \
4950
// 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)