anchor.diff:              0
           | Compile { Files = files
                       OutputPath = outPath
  -                    NoBeam = noBeam } as c ->
  +                    NoBeam = noBeam
  +                    DumpAst = dumpAst } as c ->
               let outDir =
                   match outPath with
                   | None ->
  
positive.code:                 inner {opts with OutputPath = Some outPath } tail
              | "--nobeam" :: tail ->
                  inner {opts with NoBeam = true } tail
              | files ->
                  {opts with Files = files }
  
          inner { OutputPath = None
                  NoBeam = false
                  Files = [] } argv
          |> Compile
  
  
negative.code:                     let res = check checker options file fileContents
                      for i in res.AssemblyContents.ImplementationFiles do
                          for decl in i.Declarations do
                              if dumpAst then
                                  printfn "AST: %A" decl
                              yield! doDecl decl ]
                  |> List.groupBy (fun fd -> fd.Module)
                  |> List.map (fun (modName, fds) ->
  