anchor.diff:      // Quotes will be printed by inner expression
       | PatQuoteExpr e -> genExpr e
       | p -> failwithf "Unexpected pattern: %O" p
  -
  
positive.code:             | [] -> col sepNln xs genSigModuleDecl ctx
              | _ -> (col sepNln xs genSigModuleDecl +> rep 2 sepNln +> genSigModuleDeclList ys) ctx
  
      | SigHashDirectiveL(xs, ys) 
      | SigModuleAbbrevL(xs, ys) 
      | SigValL(xs, ys) ->
          match ys with
  
negative.code:         // Use verbatim string to escape '\' correctly
          | _ when s.Contains("\\") -> !- (sprintf "@\"%O\"" s)
          | _ -> !- (sprintf "\"%O\"" s)
      !- "#" -- h +> sepSpace +> gs +> sepNln
  
  and genModuleOrNamespace(ModuleOrNamespace(ats, px, ao, s, mds, isModule)) =
      genPreXmlDoc px
  