Re: [PATCH] Fix expressions always false

2019-12-19 Thread Ranier Vilela
>1) long is 64 bits on Unix-like platforms >2) checking a long against LONG_MIN/LONG_MAX is _definitely_ pointless >3) it's being cast to an int for the from_char_set_int() call below >Please take your time to read the whole context of the code you're >changing, and consider other platforms than ju

Re: [PATCH] Fix expressions always false

2019-12-19 Thread Dagfinn Ilmari Mannsåker
Ranier Vilela writes: > More about expressions always false. > 2. src/backend/utils/adt/formatting.c > result is declared long. Comparison with int limits is always false. > 3. src/backend/utils/adt/jsonfuncs.c > lindex is declared long. . Comparison with int limits is always false. 1) long is 6

[PATCH] Fix expressions always false

2019-12-19 Thread Ranier Vilela
More about expressions always false. 1. /src/backend/executor/execExprInterp.c ndims <= 0 neve be negative, because ndims aways is added up +1 2. src/backend/utils/adt/formatting.c result is declared long. Comparison with int limits is always false. 3. src/backend/utils/adt/jsonfuncs.c lindex is de