anchor.diff:                  let symbol = handleTerminal term
                   literalMap.Add(lit, symbol)
                   LALRSymbol.Terminal symbol
  -            | Symbol.NewLine -> LALRSymbol.Terminal <| getNewLineTerminal()
  +            | Symbol.NewLine -> 
  +                usesNewLine <- true
  +                match newLineSymbol with
  +                | Choice1Of4 nlTerminal -> nlTerminal
  +                | _ ->
  +                    let nlTerminal = newTerminal "NewLine"
  +                    terminals.Add(nlTerminal)
  +                    transformers.Add(tNull)
  +                    newLineSymbol <- Choice1Of4 nlTerminal
  +                    nlTerminal
  +                |> LALRSymbol.Terminal
               | Symbol.Nonterminal nont when nonterminalMap.ContainsKey(nont) ->
                   LALRSymbol.Nonterminal nonterminalMap.[nont]
               | Symbol.Nonterminal nont ->
  
positive.code:             addDFASymbol whitespaceRegex (Choice2Of4 whitespaceSymbol)
  
          // And finally, add the newline symbol to the DFA and to the noise symbols.
          // If it was a terminal, it is already included.
          if usesNewLine then
              match newLineSymbol with
              | Choice2Of4 x -> noiseSymbols.Add(x)
  
negative.code:                 transformers.Add(if isNull term.Transformer then tNull else term.Transformer)
                  addDFASymbol term.Regex (Choice1Of4 symbol)
                  symbol
  
              match sym with
              | Symbol.Terminal term when terminalMap.ContainsKey(term) ->
  