AFAICS this patch does nothing to consider parallel safety -- that is, as things stand, a variable is allowed in a query that may be parallelised, but its value is not copied to workers, leading to incorrect results. For example:
create table foo(a int); insert into foo select * from generate_series(1,1000000); create variable zero int; let zero = 0;
explain (costs off) select count(*) from foo where a%10 = zero;