Skip to content

Commit ffa6d65

Browse files
committed
[Options] Make -import-bridging-header the canonical spelling instead of -import-objc-header
This command-line option hasn't been Objective-C specific ever, really. Make the language-independent spelling the primary one to make that more obvious.
1 parent b7b4b57 commit ffa6d65

File tree

7 files changed

+38
-38
lines changed

7 files changed

+38
-38
lines changed

include/swift/Option/Options.td

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -347,12 +347,12 @@ def import_underlying_module : Flag<["-"], "import-underlying-module">,
347347
Flags<[FrontendOption, NoInteractiveOption]>,
348348
HelpText<"Implicitly imports the Objective-C half of a module">;
349349

350-
def import_objc_header : Separate<["-"], "import-objc-header">,
351-
Flags<[FrontendOption, HelpHidden, ArgumentIsPath]>,
352-
HelpText<"Implicitly imports an Objective-C header file">;
353350
def import_bridging_header : Separate<["-"], "import-bridging-header">,
351+
Flags<[FrontendOption, ArgumentIsPath]>,
352+
HelpText<"Implicitly imports a C header file">;
353+
def import_objc_header : Separate<["-"], "import-objc-header">,
354354
Flags<[FrontendOption, HelpHidden, ArgumentIsPath]>,
355-
Alias<import_objc_header>;
355+
Alias<import_bridging_header>;
356356
def import_pch : Separate<["-"], "import-pch">,
357357
Flags<[FrontendOption, HelpHidden, ArgumentIsPath]>,
358358
HelpText<"Import bridging header PCH file">;

lib/Driver/Driver.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ static void validateLegacyUnsupportedArgs(DiagnosticEngine &diags,
144144

145145
static void validateBridgingHeaderArgs(DiagnosticEngine &diags,
146146
const ArgList &args) {
147-
if (!args.hasArgNoClaim(options::OPT_import_objc_header))
147+
if (!args.hasArgNoClaim(options::OPT_import_bridging_header))
148148
return;
149149

150150
if (args.hasArgNoClaim(options::OPT_import_underlying_module))
@@ -1521,7 +1521,7 @@ void Driver::buildActions(SmallVectorImpl<const Action *> &TopLevelActions,
15211521
if (Args.hasFlag(options::OPT_enable_bridging_pch,
15221522
options::OPT_disable_bridging_pch,
15231523
true)) {
1524-
if (Arg *A = Args.getLastArg(options::OPT_import_objc_header)) {
1524+
if (Arg *A = Args.getLastArg(options::OPT_import_bridging_header)) {
15251525
StringRef Value = A->getValue();
15261526
auto Ty = TC.lookupTypeForExtension(llvm::sys::path::extension(Value));
15271527
if (Ty == file_types::TY_ClangHeader) {

lib/Driver/ToolChains.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -524,7 +524,7 @@ ToolChain::constructInvocation(const CompileJobAction &job,
524524

525525
// Pass along an -import-objc-header arg, replacing the argument with the name
526526
// of any input PCH to the current action if one is present.
527-
if (context.Args.hasArgNoClaim(options::OPT_import_objc_header)) {
527+
if (context.Args.hasArgNoClaim(options::OPT_import_bridging_header)) {
528528
bool ForwardAsIs = true;
529529
bool bridgingPCHIsEnabled =
530530
context.Args.hasFlag(options::OPT_enable_bridging_pch,
@@ -543,7 +543,7 @@ ToolChain::constructInvocation(const CompileJobAction &job,
543543
}
544544
}
545545
if (ForwardAsIs) {
546-
context.Args.AddLastArg(Arguments, options::OPT_import_objc_header);
546+
context.Args.AddLastArg(Arguments, options::OPT_import_bridging_header);
547547
}
548548
if (usePersistentPCH) {
549549
context.Args.AddLastArg(Arguments, options::OPT_pch_output_dir);
@@ -972,7 +972,7 @@ ToolChain::constructInvocation(const InterpretJobAction &job,
972972
addCommonFrontendArgs(context.OI, context.Output, context.Args, Arguments);
973973
addRuntimeLibraryFlags(context.OI, Arguments);
974974

975-
context.Args.AddLastArg(Arguments, options::OPT_import_objc_header);
975+
context.Args.AddLastArg(Arguments, options::OPT_import_bridging_header);
976976

977977
context.Args.AddLastArg(Arguments, options::OPT_parse_sil);
978978

@@ -1233,7 +1233,7 @@ ToolChain::constructInvocation(const MergeModuleJobAction &job,
12331233
options::OPT_omit_extension_block_symbols);
12341234
context.Args.AddLastArg(Arguments, options::OPT_symbol_graph_minimum_access_level);
12351235

1236-
context.Args.AddLastArg(Arguments, options::OPT_import_objc_header);
1236+
context.Args.AddLastArg(Arguments, options::OPT_import_bridging_header);
12371237

12381238
Arguments.push_back("-module-name");
12391239
Arguments.push_back(context.Args.MakeArgString(context.OI.ModuleName));
@@ -1276,7 +1276,7 @@ ToolChain::constructInvocation(const VerifyModuleInterfaceJobAction &job,
12761276
file_types::TY_SerializedDiagnostics,
12771277
"-serialize-diagnostics-path");
12781278

1279-
context.Args.AddLastArg(Arguments, options::OPT_import_objc_header);
1279+
context.Args.AddLastArg(Arguments, options::OPT_import_bridging_header);
12801280

12811281
Arguments.push_back("-module-name");
12821282
Arguments.push_back(context.Args.MakeArgString(context.OI.ModuleName));
@@ -1342,7 +1342,7 @@ ToolChain::constructInvocation(const REPLJobAction &job,
13421342
addCommonFrontendArgs(context.OI, context.Output, context.Args, FrontendArgs);
13431343
addRuntimeLibraryFlags(context.OI, FrontendArgs);
13441344

1345-
context.Args.AddLastArg(FrontendArgs, options::OPT_import_objc_header);
1345+
context.Args.AddLastArg(FrontendArgs, options::OPT_import_bridging_header);
13461346
context.Args.addAllArgs(FrontendArgs,
13471347
{options::OPT_framework, options::OPT_L});
13481348
ToolChain::addLinkedLibArgs(context.Args, FrontendArgs);

lib/Frontend/ArgsToFrontendOptionsConverter.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -913,7 +913,7 @@ static inline bool isPCHFilenameExtension(StringRef path) {
913913

914914
void ArgsToFrontendOptionsConverter::computeImportObjCHeaderOptions() {
915915
using namespace options;
916-
if (const Arg *A = Args.getLastArgNoClaim(OPT_import_objc_header)) {
916+
if (const Arg *A = Args.getLastArgNoClaim(OPT_import_bridging_header)) {
917917
// Legacy support for passing PCH file through `-import-objc-header`.
918918
if (isPCHFilenameExtension(A->getValue()))
919919
Opts.ImplicitObjCPCHPath = A->getValue();

lib/Frontend/CompilerInvocation.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2109,7 +2109,7 @@ static bool ParseClangImporterArgs(ClangImporterOptions &Opts, ArgList &Args,
21092109
else if (Args.hasArg(OPT_emit_pcm) || Args.hasArg(OPT_dump_pcm))
21102110
Opts.Mode = ClangImporterOptions::Modes::PrecompiledModule;
21112111

2112-
if (auto *A = Args.getLastArg(OPT_import_objc_header))
2112+
if (auto *A = Args.getLastArg(OPT_import_bridging_header))
21132113
Opts.BridgingHeader = A->getValue();
21142114
if (auto *A = Args.getLastArg(OPT_import_pch))
21152115
Opts.BridgingHeaderPCH = A->getValue();

test/Driver/bridging-pch.swift

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -6,63 +6,63 @@
66
// YESPCHACT: 2: input, "{{.*}}bridging-pch.swift", swift
77
// YESPCHACT: 3: compile, {2, 1}, none
88

9-
// RUN: %target-build-swift -typecheck -disable-bridging-pch -driver-print-actions -import-objc-header %S/Inputs/bridging-header.h %s 2>&1 | %FileCheck %s -check-prefix=NOPCHACT
9+
// RUN: %target-build-swift -typecheck -disable-bridging-pch -driver-print-actions -import-bridging-header %S/Inputs/bridging-header.h %s 2>&1 | %FileCheck %s -check-prefix=NOPCHACT
1010
// NOPCHACT: 0: input, "{{.*}}bridging-pch.swift", swift
1111
// NOPCHACT: 1: compile, {0}, none
1212

13-
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-objc-header %S/Inputs/bridging-header.h %s 2>&1 | %FileCheck %s -check-prefix=YESPCHJOB
13+
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-bridging-header %S/Inputs/bridging-header.h %s 2>&1 | %FileCheck %s -check-prefix=YESPCHJOB
1414
// YESPCHJOB: {{.*}}swift{{(c|c-legacy-driver|-frontend)?(\.exe)?"?}} -frontend {{.*}} -emit-pch -o {{.*}}bridging-header-{{.*}}.pch
15-
// YESPCHJOB: {{.*}}swift{{(c|c-legacy-driver|-frontend)?(\.exe)?"?}} -frontend {{.*}} -import-objc-header {{.*}}bridging-header-{{.*}}.pch
15+
// YESPCHJOB: {{.*}}swift{{(c|c-legacy-driver|-frontend)?(\.exe)?"?}} -frontend {{.*}} -import-bridging-header {{.*}}bridging-header-{{.*}}.pch
1616

17-
// RUN: %target-build-swift -typecheck -disable-bridging-pch -driver-print-jobs -import-objc-header %S/Inputs/bridging-header.h %s 2>&1 | %FileCheck %s -check-prefix=NOPCHJOB
18-
// NOPCHJOB: {{.*}}swift{{(c|c-legacy-driver|-frontend)?(\.exe)?"?}} -frontend {{.*}} -import-objc-header {{.*}}Inputs/bridging-header.h
17+
// RUN: %target-build-swift -typecheck -disable-bridging-pch -driver-print-jobs -import-bridging-header %S/Inputs/bridging-header.h %s 2>&1 | %FileCheck %s -check-prefix=NOPCHJOB
18+
// NOPCHJOB: {{.*}}swift{{(c|c-legacy-driver|-frontend)?(\.exe)?"?}} -frontend {{.*}} -import-bridging-header {{.*}}Inputs/bridging-header.h
1919

20-
// RUN: %target-build-swift -typecheck -driver-print-jobs -index-store-path %t/idx -import-objc-header %S/Inputs/bridging-header.h %s 2>&1 | %FileCheck %s -check-prefix=INDEXSTORE
20+
// RUN: %target-build-swift -typecheck -driver-print-jobs -index-store-path %t/idx -import-bridging-header %S/Inputs/bridging-header.h %s 2>&1 | %FileCheck %s -check-prefix=INDEXSTORE
2121
// INDEXSTORE: {{.*}}swift{{(c|c-legacy-driver|-frontend)?(\.exe)?"?}} -frontend {{.*}} -index-store-path {{.*}}/idx{{"?}} -emit-pch -o {{.*}}bridging-header-{{.*}}.pch
2222

2323
// RUN: echo "{\"\": {\"swift-dependencies\": \"%/t/master.swiftdeps\"}, \"%/s\": {\"swift-dependencies\": \"%/t/bridging-header.swiftdeps\"}}" > %t.json
24-
// RUN: %target-build-swift -typecheck -incremental -enable-bridging-pch -output-file-map %t.json -import-objc-header %S/Inputs/bridging-header.h %s
24+
// RUN: %target-build-swift -typecheck -incremental -enable-bridging-pch -output-file-map %t.json -import-bridging-header %S/Inputs/bridging-header.h %s
2525

2626
// RUN: mkdir %t/tmp
27-
// RUN: env TMP="%t/tmp/" TMPDIR="%t/tmp/" not %target-build-swift -typecheck -import-objc-header %S/../Inputs/empty.h -driver-use-frontend-path "%{python.unquoted};%S/Inputs/crash-after-generating-pch.py" -v %s
27+
// RUN: env TMP="%t/tmp/" TMPDIR="%t/tmp/" not %target-build-swift -typecheck -import-bridging-header %S/../Inputs/empty.h -driver-use-frontend-path "%{python.unquoted};%S/Inputs/crash-after-generating-pch.py" -v %s
2828
// RUN: ls %/t/tmp/ | grep .*pch
2929

3030
// Test persistent PCH
3131

32-
// RUN: %target-build-swift -typecheck -driver-print-actions -import-objc-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-YESPCHACT
32+
// RUN: %target-build-swift -typecheck -driver-print-actions -import-bridging-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-YESPCHACT
3333
// PERSISTENT-YESPCHACT: 0: input, "{{.*}}Inputs/bridging-header.h", clang-header
3434
// PERSISTENT-YESPCHACT: 1: generate-pch, {0}, none
3535
// PERSISTENT-YESPCHACT: 2: input, "{{.*}}bridging-pch.swift", swift
3636
// PERSISTENT-YESPCHACT: 3: compile, {2, 1}, none
3737

38-
// RUN: %target-build-swift -c -driver-print-actions -embed-bitcode -import-objc-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-YESPCHACTBC
38+
// RUN: %target-build-swift -c -driver-print-actions -embed-bitcode -import-bridging-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-YESPCHACTBC
3939
// PERSISTENT-YESPCHACTBC: 0: input, "{{.*}}Inputs/bridging-header.h", clang-header
4040
// PERSISTENT-YESPCHACTBC: 1: generate-pch, {0}, none
4141
// PERSISTENT-YESPCHACTBC: 2: input, "{{.*}}bridging-pch.swift", swift
4242
// PERSISTENT-YESPCHACTBC: 3: compile, {2, 1}, llvm-bc
4343

44-
// RUN: %target-build-swift -typecheck -disable-bridging-pch -driver-print-actions -import-objc-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch %s 2>&1 | %FileCheck %s -check-prefix=NOPCHACT
44+
// RUN: %target-build-swift -typecheck -disable-bridging-pch -driver-print-actions -import-bridging-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch %s 2>&1 | %FileCheck %s -check-prefix=NOPCHACT
4545

46-
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-objc-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch -disable-bridging-pch %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-DISABLED-YESPCHJOB
47-
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-objc-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch -whole-module-optimization -disable-bridging-pch %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-DISABLED-YESPCHJOB
46+
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-bridging-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch -disable-bridging-pch %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-DISABLED-YESPCHJOB
47+
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-bridging-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch -whole-module-optimization -disable-bridging-pch %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-DISABLED-YESPCHJOB
4848
// PERSISTENT-DISABLED-YESPCHJOB-NOT: -pch-output-dir
4949

50-
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-objc-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch -serialize-diagnostics %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-YESPCHJOB-DIAG1
50+
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-bridging-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch -serialize-diagnostics %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-YESPCHJOB-DIAG1
5151
// PERSISTENT-YESPCHJOB-DIAG1: {{.*}}swift{{(c|c-legacy-driver|-frontend)?(\.exe)?"?}} -frontend {{.*}} -serialize-diagnostics-path {{.*}}bridging-header-{{.*}}.dia{{"?}} {{.*}} -emit-pch -pch-output-dir {{.*}}/pch
5252

53-
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-objc-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch-out-dir -serialize-diagnostics %s -emit-module -emit-module-path /module-path-dir 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-YESPCHJOB-DIAG2
53+
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-bridging-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch-out-dir -serialize-diagnostics %s -emit-module -emit-module-path /module-path-dir 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-YESPCHJOB-DIAG2
5454
// PERSISTENT-YESPCHJOB-DIAG2: {{.*}}swift{{(c|c-legacy-driver|-frontend)?(\.exe)?"?}} -frontend {{.*}} -serialize-diagnostics-path {{.*}}/pch-out-dir{{/|\\\\}}bridging-header-{{.*}}.dia{{"?}} {{.*}} -emit-pch -pch-output-dir {{.*}}/pch-out-dir
5555

56-
// RUN: %target-build-swift -typecheck -import-objc-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch -parseable-output -driver-skip-execution %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-OUTPUT
56+
// RUN: %target-build-swift -typecheck -import-bridging-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch -parseable-output -driver-skip-execution %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-OUTPUT
5757
// PERSISTENT-OUTPUT-NOT: "outputs": [
5858

59-
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-objc-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch -whole-module-optimization %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-WMO-YESPCHJOB --implicit-check-not pch-disable-validation
60-
// PERSISTENT-WMO-YESPCHJOB: {{.*}}swift{{(c|c-legacy-driver|-frontend)?(\.exe)?"?}} -frontend {{.*}} -import-objc-header {{.*}}bridging-header.h{{"?}} -pch-output-dir {{.*}}/pch
59+
// RUN: %target-build-swift -typecheck -driver-print-jobs -import-bridging-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch -whole-module-optimization %s 2>&1 | %FileCheck %s -check-prefix=PERSISTENT-WMO-YESPCHJOB --implicit-check-not pch-disable-validation
60+
// PERSISTENT-WMO-YESPCHJOB: {{.*}}swift{{(c|c-legacy-driver|-frontend)?(\.exe)?"?}} -frontend {{.*}} -import-bridging-header {{.*}}bridging-header.h{{"?}} -pch-output-dir {{.*}}/pch
6161

62-
// RUN: %target-build-swift -typecheck -disable-bridging-pch -driver-print-jobs -import-objc-header %/S/Inputs/bridging-header.h -pch-output-dir %t/pch %/s 2>&1 | %FileCheck %s -check-prefix=NOPCHJOB
63-
// RUN: %target-build-swift -typecheck -incremental -enable-bridging-pch -output-file-map %t.json -import-objc-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch %s
62+
// RUN: %target-build-swift -typecheck -disable-bridging-pch -driver-print-jobs -import-bridging-header %/S/Inputs/bridging-header.h -pch-output-dir %t/pch %/s 2>&1 | %FileCheck %s -check-prefix=NOPCHJOB
63+
// RUN: %target-build-swift -typecheck -incremental -enable-bridging-pch -output-file-map %t.json -import-bridging-header %S/Inputs/bridging-header.h -pch-output-dir %t/pch %s
6464

65-
// RUN: %target-build-swift -### -typecheck -O -import-objc-header %S/Inputs/bridging-header.h %s 2>&1 | %FileCheck %s -check-prefix=OPTPCH
65+
// RUN: %target-build-swift -### -typecheck -O -import-bridging-header %S/Inputs/bridging-header.h %s 2>&1 | %FileCheck %s -check-prefix=OPTPCH
6666
// OPTPCH: swift{{(c|c-legacy-driver|-frontend)?(\.exe)?"?}} -frontend
6767
// OPTPCH-SAME: -O{{ }}
6868
// OPTPCH-SAME: -emit-pch

test/Driver/working-directory.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,10 @@
3232
// RUN: cd %t && %swiftc_driver -driver-print-jobs -working-directory %/S/Inputs -emit-executable %/s -L=. | %FileCheck %s -check-prefix=L_PATH
3333
// L_PATH: -L {{"?}}SOURCE_DIR/test/Driver/Inputs
3434

35-
// RUN: cd %t && %swiftc_driver -driver-print-jobs -working-directory %/S/Inputs -c %/s -disable-bridging-pch -import-objc-header bridging-header.h | %FileCheck %s -check-prefix=OBJC_HEADER1
36-
// OBJC_HEADER1: -import-objc-header {{"?}}SOURCE_DIR/test/Driver/Inputs{{/|\\\\}}bridging-header.h
35+
// RUN: cd %t && %swiftc_driver -driver-print-jobs -working-directory %/S/Inputs -c %/s -disable-bridging-pch -import-bridging-header bridging-header.h | %FileCheck %s -check-prefix=OBJC_HEADER1
36+
// OBJC_HEADER1: -import-bridging-header {{"?}}SOURCE_DIR/test/Driver/Inputs{{/|\\\\}}bridging-header.h
3737

38-
// RUN: cd %t && %swiftc_driver -driver-print-jobs -working-directory %/S/Inputs -c %/s -enable-bridging-pch -import-objc-header bridging-header.h | %FileCheck %s -check-prefix=OBJC_HEADER2
38+
// RUN: cd %t && %swiftc_driver -driver-print-jobs -working-directory %/S/Inputs -c %/s -enable-bridging-pch -import-bridging-header bridging-header.h | %FileCheck %s -check-prefix=OBJC_HEADER2
3939
// OBJC_HEADER2: SOURCE_DIR/test/Driver/Inputs{{/|\\\\}}bridging-header.h{{"? .*}}-emit-pch
4040

4141
// RUN: cd %t && %swiftc_driver -driver-print-jobs -working-directory %/S/Inputs -c %/s -o main.o | %FileCheck %s -check-prefix=OUTPUT_OBJ

0 commit comments

Comments
 (0)