@@ -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