• Tom Lane's avatar
    Align ECPG lexer more closely with the core and psql lexers. · ec937d08
    Tom Lane authored
    Make a bunch of basically-cosmetic changes to reduce the diffs between
    the flex rules in scan.l, psqlscan.l, and pgc.l.  Reorder some code,
    adjust a lot of whitespace, sync some comments, make use of flex start
    condition scopes to do that.
    
    There are a few non-cosmetic changes in the ECPG lexer:
    
    * Bring over the decimalfail rule (and support function
    process_integer_literal) so that ECPG will lex "1..10" into
    the same tokens as the backend would.  I'm not sure this makes any
    visible difference to users, but I'm not sure it doesn't, either.
    
    * <xdc><<EOF>> gets its own rule so as to produce a more on-point
    error message.
    
    * Remove duplicate <SQL>{xdstart} rule.
    
    John Naylor, with a few additional changes by me
    
    Discussion: https://postgr.es/m/CAJVSVGWGqY9YBs2EwtRUkbNv=hXkN8yRPOoD1wxE6COgvvrz5g@mail.gmail.com
    ec937d08
pgc.l 41.2 KB