Swift 6.3-dev (swift-DEVELOPMENT-SNAPSHOT-2025-12-11-a) crashes when compiling certain code patterns. This issue tracks the workarounds applied to enable building with Swift 6.3.
Assertion failed: (Start.isValid() == End.isValid() && "Start and end should either both be valid or both be invalid!"), function SourceRange, file SourceLoc.h, line 161.
Summary
Swift 6.3-dev (swift-DEVELOPMENT-SNAPSHOT-2025-12-11-a) crashes when compiling certain code patterns. This issue tracks the workarounds applied to enable building with Swift 6.3.
Compiler Bug
Workarounds Applied
1.
PrimaryKeyMigration.swiftSyncEngine.migratePrimaryKeys()- guarded with#if !compiler(>=6.3)PrimaryKeyedTable.migratePrimaryKeyToUUID()- guarded with#if !compiler(>=6.3)#sqlmacro +$backfillUUIDmacro-generated function crashes compiler2.
Statement+GRDB.swiftSelectStatement.find(_:key:)- guarded with#if !compiler(>=6.3)Select.find()which is guarded in swift-structured-queriesImpact
find(key:)methods unavailableRelated Changes in swift-structured-queries
PrimaryKeyed.swift- closures with opaque type sequencesSelect.swift- variadic generics pack expansionTODO