swiftlang/swift

Error says `@preconcurrency` only applies in inheritance clauses

Open

#88,338 建立於 2026年4月7日

在 GitHub 查看
 (2 留言) (0 反應) (0 負責人)Swift (69,989 star) (10,719 fork)batch import
@preconcurrencyTypeResolverattributescompilergood first issueswift 6.3type checker

描述

Description

This is not true. The attribute can also be used on declarations such as types, functions, and imports.

Reproduction

let _: @preconcurrency @MainActor() -> Void = {}
error: '@preconcurrency' only applies in inheritance clauses
  83 | 
  84 | let _: @preconcurrency @MainActor() -> Void = {}
     |        `- error: '@preconcurrency' only applies in inheritance clauses
  85 | 

Expected behavior

An accurate error message. It might be better to say that @preconcurrency cannot be used on a type attribute instead of enumerating all the valid positions.

Environment

Swift version 6.3-dev (fefcb257b5b5d32)

Additional information

No response

貢獻者指南