(replying to both) It's real, all the version checks are just macros for checking pg_version and/or major and minor. I'll switch it to VERSION() and check it out. However, right now it *does* parse the major and minor correctly. I tested it in the logs, and we get major = 8, minor = 4, and the last digit is ignored.

Looking at the sscanf format string, it shouldn't break anything if we use the VERSION() output, but I'll confirm.