From c951d8b23d984639bde1b7d64322052b13596ad3 Mon Sep 17 00:00:00 2001 From: Meghana Gupta Date: Tue, 15 Oct 2024 12:11:53 -0700 Subject: [PATCH 1/2] Delete reference to simpleTypeSpecifier --- Sources/TestingMacros/TestDeclarationMacro.swift | 3 --- 1 file changed, 3 deletions(-) diff --git a/Sources/TestingMacros/TestDeclarationMacro.swift b/Sources/TestingMacros/TestDeclarationMacro.swift index c98373469..a3867f3a8 100644 --- a/Sources/TestingMacros/TestDeclarationMacro.swift +++ b/Sources/TestingMacros/TestDeclarationMacro.swift @@ -86,9 +86,6 @@ 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 - } if invalidSpecifierKeywords.contains(specifier.specifier.tokenKind) { diagnostics.append(.specifierNotSupported(specifier.specifier, on: parameter, whenUsing: testAttribute)) } From 451d7cca3423d81b215ee270e5d644d1c66c99f6 Mon Sep 17 00:00:00 2001 From: Meghana Gupta Date: Tue, 15 Oct 2024 13:50:02 -0700 Subject: [PATCH 2/2] Update Sources/TestingMacros/TestDeclarationMacro.swift Co-authored-by: Jonathan Grynspan --- Sources/TestingMacros/TestDeclarationMacro.swift | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Sources/TestingMacros/TestDeclarationMacro.swift b/Sources/TestingMacros/TestDeclarationMacro.swift index a3867f3a8..c9263ecb2 100644 --- a/Sources/TestingMacros/TestDeclarationMacro.swift +++ b/Sources/TestingMacros/TestDeclarationMacro.swift @@ -86,7 +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 { - if invalidSpecifierKeywords.contains(specifier.specifier.tokenKind) { + for token in specifier.tokens(viewMode: .sourceAccurate) { + if invalidSpecifierKeywords.contains(token.tokenKind) { + diagnostics.append(.specifierNotSupported(token, on: parameter, whenUsing: testAttribute)) + break + } + } diagnostics.append(.specifierNotSupported(specifier.specifier, on: parameter, whenUsing: testAttribute)) } }