Files
swift-mirror/test/Interop/Cxx/foreign-reference/Inputs/module.modulemap
John Hui 5dbc8c25f9 [cxx-interop] Support ownership annotations on FRT constructors
We were previously marking synthesized FRT initializers as
"returns_retained" unconditionally (for non-immortal types), which can
cause memory errors and also suppresses diagnostics about the lack of
such annotations.

This patch fixes that behavior, and also adjusts the source locations of
the synthesized C++ factory method to point to the actual constructor
decl when its location is available, so that the diagnostics make sense
when warning about the lack of annotations.

rdar://163127315
2026-01-21 16:23:53 -08:00

105 lines
1.7 KiB
Plaintext

module FRTConstructors {
header "frt-constructors.h"
requires cplusplus
}
module POD {
header "pod.h"
requires cplusplus
}
module MoveOnly {
header "move-only.h"
requires cplusplus
}
module Singleton {
header "singleton.h"
requires cplusplus
}
module Nullable {
header "nullable.h"
requires cplusplus
}
module Inheritance {
header "inheritance.h"
requires cplusplus
}
module WitnessTable {
header "witness-table.h"
requires cplusplus
}
module ReferenceCounted {
header "reference-counted.h"
}
module ReferenceCountedObjCProperty {
header "reference-counted-objc-property.h"
requires cplusplus
export *
}
module LifetimeOperationMethods {
header "lifetime-operation-methods.h"
requires cplusplus
}
module MemberLayout {
header "member-layout.h"
requires cplusplus
}
module MemberInheritance {
header "member-inheritance.h"
requires cplusplus
}
module DerivedFieldGetterReturnsOwnedFRT {
header "derived-field-getter-returns-owned-frt.h"
requires cplusplus
}
module FunctionsAndMethodsReturningFRT {
header "cxx-functions-and-methods-returning-frt.h"
requires cplusplus
}
module PassAsParameter {
header "pass-as-parameter.h"
requires cplusplus
}
module Printed {
header "printed.h"
requires cplusplus
}
module VirtMethodWithRvalRef {
header "virtual-methods-with-rvalue-reference.h"
requires cplusplus
}
module VirtMethodWitMoveOnly {
header "virtual-methods-move-only-type.h"
requires cplusplus
}
module LoggingFrts {
header "logging-frts.h"
requires cplusplus
}
module FRTReferenceReturns {
header "frt-reference-returns.h"
requires cplusplus
}
module RefCountedSmartPtrs {
header "refcounted-smartptrs.h"
requires cplusplus
}