metaborg / spoofax-pie

Spoofax implementation using PIE pipelines
Apache License 2.0
12 stars 9 forks source link

Giving a name to a bracket production in SDF3 breaks generated Stratego #65

Closed molenzwiebel closed 3 years ago

molenzwiebel commented 3 years ago

Summary

Using an SDF3 bracket production with a constructor name breaks the generated Stratego 2 pretty printer.

What you did

Expr.Bracketed = <(<Expr>)> {bracket}

What you expected to happen

Error.

What actually happened

Messages of ./build/generated/sources/languageSpecification/stratego/pp/exps-pp.str2:
  ERROR 46628-46635@1583-1584: Undefined constructor with arity 1 and type DynT(Dyn).
  ERROR 46360-46367@1572-1573: Undefined constructor with arity 1 and type DynT(Dyn).
  ERROR 46102-46109@1561-1562: Undefined constructor with arity 1 and type DynT(Dyn).
  ERROR 46060-46067@1558-1559: Undefined constructor with arity 1 and type DynT(Dyn).
  ERROR 45388-45395@1540-1541: Undefined constructor with arity 1 and type DynT(Dyn).

Context

Gohla commented 3 years ago

Fixed by https://github.com/metaborg/sdf/commit/616a8b07a36e5e00c5dd35a6b162823fc3eb55d5