A newbie error that we see *constantly* is misunderstanding identifier
case-folding rules. ISTM that commit e529cd4ff missed a chance to help
with that. You do get a hint for this:
regression=# create table t1 (foo int, "Bar" int);
CREATE TABLE
regression=# select bar from t1;
ERROR: column "bar" does not exist
LINE 1: select bar from t1; ^
HINT: Perhaps you meant to reference the column "t1"."Bar".
but apparently it's just treating that as a vanilla one-mistyped-character
error, because there's no hint for this:
regression=# create table t2 (foo int, "BAR" int);
CREATE TABLE
regression=# select BAR from t2;
ERROR: column "bar" does not exist
LINE 1: select BAR from t2; ^
I think this hint might be a lot more useful if its comparison mechanism
were case-insensitive.
regards, tom lane