[AST] Introduce BuiltinProtocolConformance

This commit is contained in:
Azoy
2020-05-23 11:07:38 -04:00
parent 64ec60bbd4
commit f21a306ae5
16 changed files with 294 additions and 27 deletions

View File

@@ -2,7 +2,7 @@
//
// This source file is part of the Swift.org open source project
//
// Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors
// Copyright (c) 2014 - 2020 Apple Inc. and the Swift project authors
// Licensed under Apache License v2.0 with Runtime Library Exception
//
// See https://swift.org/LICENSE.txt for license information
@@ -220,6 +220,11 @@ SILModule::lookUpWitnessTable(const ProtocolConformance *C,
SILWitnessTable *wtable;
auto rootC = C->getRootConformance();
// Builtin conformances don't have witness tables in SIL.
if (isa<BuiltinProtocolConformance>(rootC))
return nullptr;
// Attempt to lookup the witness table from the table.
auto found = WitnessTableMap.find(rootC);
if (found == WitnessTableMap.end()) {