diff --git a/Sources/TestingMacros/TestDeclarationMacro.swift b/Sources/TestingMacros/TestDeclarationMacro.swift index c98373469..c9263ecb2 100644 --- a/Sources/TestingMacros/TestDeclarationMacro.swift +++ b/Sources/TestingMacros/TestDeclarationMacro.swift @@ -86,10 +86,12 @@ public struct TestDeclarationMacro: PeerMacro, Sendable { let invalidSpecifierKeywords: [TokenKind] = [.keyword(.inout), .keyword(.isolated), .keyword(._const),] if let parameterType = parameter.type.as(AttributedTypeSyntax.self) { for specifier in parameterType.specifiers { - guard case let .simpleTypeSpecifier(specifier) = specifier else { - continue + for token in specifier.tokens(viewMode: .sourceAccurate) { + if invalidSpecifierKeywords.contains(token.tokenKind) { + diagnostics.append(.specifierNotSupported(token, on: parameter, whenUsing: testAttribute)) + break + } } - if invalidSpecifierKeywords.contains(specifier.specifier.tokenKind) { diagnostics.append(.specifierNotSupported(specifier.specifier, on: parameter, whenUsing: testAttribute)) } }