Thread: BUG #16861: Undefined behavior in power_var_int under the address sanitizer when exponent is INT_MIN

The following bug has been logged on the website:

Bug reference:      16861
Logged by:          Niranjan Nilakantan
Email address:      niranjann@google.com
PostgreSQL version: 13.2
Operating system:   Linux
Description:

The newly added test from
https://github.com/postgres/postgres/commit/bc43b7c2c06c32264efe79d0b86abd41236f1d5b
triggers an overflow/undefined behavior at this line
https://github.com/postgres/postgres/blob/master/src/backend/utils/adt/numeric.c#L10299

Target contains warnings: UndefinedBehaviorSanitizer:
signed-integer-overflow .../src/backend/utils/adt/numeric.c:10299

This applies to all versions of Postgres.