@@ -581,7 +581,7 @@ struct IntrinsicJSFragment: Sendable {
581581 return IntrinsicJSFragment (
582582 parameters: [ " pointer " ] ,
583583 printCode: { arguments, scope, printer, cleanupCode in
584- return [ " \( name) .__construct( \( arguments [ 0 ] ) ) " ]
584+ return [ " _exports[' \( name) '] .__construct(\( arguments [ 0 ] ) ) " ]
585585 }
586586 )
587587 }
@@ -1985,14 +1985,7 @@ struct IntrinsicJSFragment: Sendable {
19851985 case . jsValue: return . jsValueLiftParameter
19861986 case . unsafePointer: return . identity
19871987 case . swiftHeapObject( let name) :
1988- switch context {
1989- case . importTS:
1990- throw BridgeJSLinkError (
1991- message: " swiftHeapObject ' \( name) ' can only be used in protocol exports, not in \( context) "
1992- )
1993- case . exportSwift:
1994- return . swiftHeapObjectLiftParameter( name)
1995- }
1988+ return . swiftHeapObjectLiftParameter( name)
19961989 case . swiftProtocol: return . jsObjectLiftParameter
19971990 case . void:
19981991 throw BridgeJSLinkError (
@@ -2074,15 +2067,8 @@ struct IntrinsicJSFragment: Sendable {
20742067 case . jsObject: return . jsObjectLowerReturn
20752068 case . jsValue: return . jsValueLowerReturn( context: context)
20762069 case . unsafePointer: return . identity
2077- case . swiftHeapObject( let name) :
2078- switch context {
2079- case . importTS:
2080- throw BridgeJSLinkError (
2081- message: " swiftHeapObject ' \( name) ' can only be used in protocol exports, not in \( context) "
2082- )
2083- case . exportSwift:
2084- return . swiftHeapObjectLowerReturn
2085- }
2070+ case . swiftHeapObject:
2071+ return . swiftHeapObjectLowerReturn
20862072 case . swiftProtocol: return . jsObjectLowerReturn
20872073 case . void: return . void
20882074 case . nullable( let wrappedType, let kind) :
0 commit comments