Enforce constraints for LiteParsed desugar stages

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Query Integration
    • None
    • 3
    • TBD
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Desugar extension stages need to be validated after the LiteParsedPipeline is created to ensure that they abide by the following constraints:
      1. Cycle prevention: A stage must not transitively expand back into itself.
      We will check per path by storing a stack of desugar stage names.

      2. Bounded desugar depth (kMaxDesugarDepth = 10) per expansion path

      We should create a structure similar to the ViewGraph that tracks a list of all seen desugar stage names, as well as increment a depth counter every time we go further down a nested desugaring path.

            Assignee:
            Lynne Wang
            Reporter:
            Lynne Wang
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: