AssertionError in compiler
まだ誰も着手していません。
評価
調査の方向性
issue にリンクされている Scala 2.13.1 の reproducer から始め、refchecks フェーズ中のコンパイラー失敗、特に config に対する transformCaseApply assertion を調査します。例と明示的な型を指定する workaround を検証し、元のコードが AssertionError なしでコンパイルできることを確認します。
索引モデルが issue の本文から書いたものです。
説明
https://scastie.scala-lang.org/OlegYch/BlI4CHhuSGOBXIQdlRJcwg/2
import com.softwaremill.macwire._
case class Config(redis: Int)
case class B(redis: Int)
trait MacWireComponents2 {
def int: Int
lazy val config = wire[Config]
lazy val b = {
val redis = config.redis
B(redis)
}
}
throws
[error] java.lang.AssertionError: assertion failed:
[error] transformCaseApply: name = config tree = config / class scala.reflect.internal.Trees$Ident
[error] while compiling: MacWireComponents2.scala
[error] during phase: refchecks
[error] library version: version 2.13.1
[error] compiler version: version 2.13.1
adding explicit type to config works around it
- 主要言語
- Scala
- スター
- 1.3k
- フォーク
- 77
- 平均マージ
- 9分
- マージ済み PR(30日)
- 4
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
softwaremill/macwire のほかの issue
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
softwaremill/macwire#412 · コメント 3 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
softwaremill/macwire#391 · コメント 1 件 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
softwaremill/macwire#301 · コメント 2 件 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
softwaremill/macwire#281 · コメント 5 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
softwaremill/macwire#278 · コメント 3 件 ·
softwaremill/macwire の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
Area: Excel support
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
orbeon/orbeon-forms#7893 ·
-
x:action/fix x:module/practice-exercise x:size/small
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
lichess-org/lila#21788 · コメント 2 件 ·
-
area:Iceberg area:writer documentation requires-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
apache/datafusion-comet#6147 ·