Skip to content
Snippets Groups Projects
Select Git revision
  • benchmark-tools
  • postgres-lambda
  • master default
  • REL9_4_25
  • REL9_5_20
  • REL9_6_16
  • REL_10_11
  • REL_11_6
  • REL_12_1
  • REL_12_0
  • REL_12_RC1
  • REL_12_BETA4
  • REL9_4_24
  • REL9_5_19
  • REL9_6_15
  • REL_10_10
  • REL_11_5
  • REL_12_BETA3
  • REL9_4_23
  • REL9_5_18
  • REL9_6_14
  • REL_10_9
  • REL_11_4
23 results

parse_expr.c

  • Tom Lane's avatar
    7173c485
    Fix exprTypmod to recognize length-coercion function expressions, · 7173c485
    Tom Lane authored
    such as bpchar(char_expression, N), and pull out the attrtypmod that
    the function is coercing to.  This allows correct deduction of the
    column type in examples such as
    CREATE VIEW v AS SELECT f1::char(8) FROM tbl;
    Formerly we labeled v's column as char-of-unknown-length not char(8).
    Also, this change causes the parser not to insert a redundant length
    coercion function if the user has explicitly casted an INSERT or UPDATE
    expression to the right length.
    7173c485
    History
    Fix exprTypmod to recognize length-coercion function expressions,
    Tom Lane authored
    such as bpchar(char_expression, N), and pull out the attrtypmod that
    the function is coercing to.  This allows correct deduction of the
    column type in examples such as
    CREATE VIEW v AS SELECT f1::char(8) FROM tbl;
    Formerly we labeled v's column as char-of-unknown-length not char(8).
    Also, this change causes the parser not to insert a redundant length
    coercion function if the user has explicitly casted an INSERT or UPDATE
    expression to the right length.