Skip to content

Commit f0dd174

Browse files
committed
[embedded] Require SwiftCompilerSources to use embedded Swift
1 parent 71612e6 commit f0dd174

File tree

3 files changed

+6
-2
lines changed

3 files changed

+6
-2
lines changed

include/swift/SIL/SILBridging.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ class SwiftPassInvocation;
6060
class GenericSpecializationInformation;
6161
}
6262

63+
extern bool nodeMetatypesInitialized;
6364
void registerBridgedClass(BridgedStringRef className, SwiftMetatype metatype);
6465

6566
struct BridgedType {

lib/Frontend/CompilerInvocation.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
#include "swift/Option/Options.h"
2121
#include "swift/Option/SanitizerOptions.h"
2222
#include "swift/Parse/ParseVersion.h"
23+
#include "swift/SIL/SILBridging.h"
2324
#include "swift/Strings.h"
2425
#include "swift/SymbolGraphGen/SymbolGraphOptions.h"
2526
#include "llvm/ADT/STLExtras.h"
@@ -1334,6 +1335,8 @@ static bool ParseLangArgs(LangOptions &Opts, ArgList &Args,
13341335
Opts.BypassResilienceChecks |= Args.hasArg(OPT_bypass_resilience);
13351336

13361337
if (Opts.hasFeature(Feature::Embedded)) {
1338+
assert(nodeMetatypesInitialized && "no SwiftCompilerSources");
1339+
13371340
Opts.UnavailableDeclOptimizationMode = UnavailableDeclOptimization::Complete;
13381341
Opts.DisableImplicitStringProcessingModuleImport = true;
13391342
Opts.DisableImplicitConcurrencyModuleImport = true;

lib/SIL/Utils/SILBridging.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@
3131

3232
using namespace swift;
3333

34-
namespace {
35-
3634
bool nodeMetatypesInitialized = false;
3735

36+
namespace {
37+
3838
// Filled in by class registration in initializeSwiftModules().
3939
SwiftMetatype nodeMetatypes[(unsigned)SILNodeKind::Last_SILNode + 1];
4040

0 commit comments

Comments
 (0)