Files
swift-mirror/test/Interop/Cxx/class/Inputs/module.modulemap
Daniel Rodríguez Troitiño 746080d6d1 [ClangImporter] Suffix ambiguous protocol names if C++ interop is enabled
The Clang Importer when C++ interop is not enabled, disambigate an Obj-C
class and protocol that are named the same by appending `Protocol` to
the protocol. This was not happening when C++ interop was enabled, but
should also apply to Obj-C++ modules.

The fix is providing an starting scope for the search, which the C++
name lookup need to actually find the similarly named counterpart.

Includes a test to avoid this problem creeping in again, and locally it
did not break any other tests.
2022-03-11 17:18:07 -08:00

95 lines
1.5 KiB
Plaintext

module AccessSpecifiers {
header "access-specifiers.h"
requires cplusplus
}
module TypeClassification {
header "type-classification.h"
requires cplusplus
}
module Constructors {
header "constructors.h"
requires cplusplus
}
module ConstructorsObjC {
header "constructors-objc.h"
requires cplusplus
}
module Destructors {
header "destructors.h"
requires cplusplus
}
module Extensions {
header "extensions.h"
requires cplusplus
}
module LoadableTypes {
header "loadable-types.h"
requires cplusplus
}
module MemberwiseInitializer {
header "memberwise-initializer.h"
requires cplusplus
}
module MemoryLayout {
header "memory-layout.h"
requires cplusplus
}
module MemberVariables {
header "member-variables.h"
requires cplusplus
}
module MutableMembers {
header "mutable-members.h"
requires cplusplus
}
module MutabilityAnnotations {
header "mutability-annotations.h"
requires cplusplus
}
module ProtocolConformance {
header "protocol-conformance.h"
requires cplusplus
}
module SynthesizedInitializers {
header "synthesized-initializers.h"
requires cplusplus
}
module DebugInfo {
header "debug-info.h"
requires cplusplus
}
module NestedRecords {
header "nested-records.h"
requires cplusplus
}
module LinkedRecords {
header "linked-records.h"
requires cplusplus
}
module InvalidNestedStruct {
header "invalid-nested-struct.h"
requires cplusplus
}
module ClassProtocolNameClash {
header "class-protocol-name-clash.h"
requires cplusplus
}