// RUN: %target-swift-emit-silgen -module-name parameterized -target %target-swift-5.9-abi-triple %s | %FileCheck %s protocol P { associatedtype A } // The mangling for generalized existentials is buggy; we decide whether to // qualify the primary associated type requirement with a protocol or not // by looking at the first generic parameter of the outer generic context. struct S1 { // CHECK-LABEL: sil hidden [ossa] @$s13parameterized2S1V1fAA1P_pSi1AAaEPRts_XPyF : $@convention(method) (S1) -> @out any P { func f() -> any P {} } struct S2 { // CHECK-LABEL: sil hidden [ossa] @$s13parameterized2S2V1fAA1P_pSi1ARts_XPyF : $@convention(method) (S2) -> @out any P { func f() -> any P {} } struct S3 { // CHECK-LABEL: sil hidden [ossa] @$s13parameterized2S3V1fAA1P_pSi1AAaEPRts_XPyF : $@convention(method) (S3) -> @out any P { func f() -> any P {} }