The following NaBL fragment

OnRule(n, t, a) :
  imports FixedField 
    from FieldSet n
    into t

is ambiguous:

BindingRule(
  NoAnnoList(
    Op(
      "OnRule"
    , [Var("n"), Var("t"), Var("a")]
    )
  )
, []
, [ ImportClause(
      [ amb(
          [ WildcardImport(
              [Direct(NamespaceRef("FixedField"))]
            , []
            , Context(All(), NamespaceRef("FieldSet"), VarRef("n"), [], Current())
            , DefScopes([DefScope(VarRef("t"))])
            , []
            )
          , WildcardImport(
              [Direct(NamespaceRef("FixedField"))]
            , []
            , Context(
                All()
              , NamespaceRef("FieldSet")
              , VarRef("n")
              , []
              , Context(All(), NamespaceRef("to"), VarRef("t"), [], Current())
              )
            , Current()
            , []
            )
          ]
        )
      ]
    )
  ]
)

However, this one is fine:

OnRule(n, t, a) :
  imports FixedField 
    from FieldSet n
    into t, a

BindingRule(
  NoAnnoList(
    Op(
      "OnRule"
    , [Var("n"), Var("t"), Var("a")]
    )
  )
, []
, [ ImportClause(
      [ WildcardImport(
          [Direct(NamespaceRef("FixedField"))]
        , []
        , Context(All(), NamespaceRef("FieldSet"), VarRef("n"), [], Current())
        , DefScopes([DefScope(VarRef("t")), DefScope(VarRef("a"))])
        , []
        )
      ]
    )
  ]
)
Submitted by Gabriƫl Konat on 29 August 2013 at 03:01

On 19 January 2014 at 02:06 Guido Wachsmuth commented:

Fixed with a follow restriction for keywords.


On 19 January 2014 at 02:06 Guido Wachsmuth closed this issue.

Log in to post comments