diff options
Diffstat (limited to 'src/backend/parser/parse_node.c')
-rw-r--r-- | src/backend/parser/parse_node.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/backend/parser/parse_node.c b/src/backend/parser/parse_node.c index ba9baf140c3..95913c80215 100644 --- a/src/backend/parser/parse_node.c +++ b/src/backend/parser/parse_node.c @@ -376,7 +376,7 @@ make_const(ParseState *pstate, A_Const *aconst) switch (nodeTag(&aconst->val)) { case T_Integer: - val = Int32GetDatum(aconst->val.ival.val); + val = Int32GetDatum(intVal(&aconst->val)); typeid = INT4OID; typelen = sizeof(int32); @@ -385,7 +385,7 @@ make_const(ParseState *pstate, A_Const *aconst) case T_Float: /* could be an oversize integer as well as a float ... */ - if (scanint8(aconst->val.fval.val, true, &val64)) + if (scanint8(aconst->val.fval.fval, true, &val64)) { /* * It might actually fit in int32. Probably only INT_MIN can @@ -415,7 +415,7 @@ make_const(ParseState *pstate, A_Const *aconst) /* arrange to report location if numeric_in() fails */ setup_parser_errposition_callback(&pcbstate, pstate, aconst->location); val = DirectFunctionCall3(numeric_in, - CStringGetDatum(aconst->val.fval.val), + CStringGetDatum(aconst->val.fval.fval), ObjectIdGetDatum(InvalidOid), Int32GetDatum(-1)); cancel_parser_errposition_callback(&pcbstate); @@ -432,7 +432,7 @@ make_const(ParseState *pstate, A_Const *aconst) * We assume here that UNKNOWN's internal representation is the * same as CSTRING */ - val = CStringGetDatum(aconst->val.sval.val); + val = CStringGetDatum(strVal(&aconst->val)); typeid = UNKNOWNOID; /* will be coerced later */ typelen = -2; /* cstring-style varwidth type */ @@ -443,7 +443,7 @@ make_const(ParseState *pstate, A_Const *aconst) /* arrange to report location if bit_in() fails */ setup_parser_errposition_callback(&pcbstate, pstate, aconst->location); val = DirectFunctionCall3(bit_in, - CStringGetDatum(aconst->val.bsval.val), + CStringGetDatum(aconst->val.bsval.bsval), ObjectIdGetDatum(InvalidOid), Int32GetDatum(-1)); cancel_parser_errposition_callback(&pcbstate); |