Fix conditional import parsing with access modifiers (#2494)

Co-authored-by: Codex <noreply@openai.com>
This commit is contained in:
Eric Horacek
2026-04-11 08:09:44 -07:00
committed by Cal Stephens
parent 78836b9959
commit 4ace97e09d
2 changed files with 18 additions and 2 deletions
+4 -2
View File
@@ -2496,8 +2496,10 @@ extension Formatter {
}
let nextToken = tokens[nextTokenIndex]
let isImportKeyword = nextToken == .keyword("import")
// Access modifier (e.g. "public") can precede "import" on the same line (Swift 6)
let isAccessModifierBeforeImport = nextToken.isKeyword && _FormatRules.aclModifiers.contains(nextToken.string)
// Access modifiers only continue the import block when they are immediately followed by import.
let isAccessModifierBeforeImport = nextToken.isKeyword &&
_FormatRules.aclModifiers.contains(nextToken.string) &&
next(.nonSpaceOrComment, after: nextTokenIndex) == .keyword("import")
if !isImportKeyword, !isAccessModifierBeforeImport {
// End of imports
pushStack()