Status of GADT soundness in Scala 3

Was looking into use of Scala 3 GADT with case class members. Noticed several academic papers from 2-3 years ago mentioning dotty compiler bugs related to GADTs. Don’t see any related discussion in Scala 3 doc. Don’t see any current dotty issues with GADT in title. Have the GADT soundness issues been fixed in latest Scala 3? Thanks.

You can find the unresolved issues on the “area:gadt” label: Issues · lampepfl/dotty · GitHub

A great deal of effort has gone into this as recently as this year, so although there are still open issues, things are in far better shape overall now than they were “2–3 years ago”. (And even back then, GADT support was already hugely better than in Scala 2.)

Most of the open issues aren’t soundness issues, but a few are.

1 Like

Thank you!