As a side note, I think the term "writable CTE" is a misnomer. The CTE
is not writable. The CTE is the result of a write operation.
A writable CTE would look like this:
WITH foo AS (SELECT ...) UPDATE foo SET ...
a bit like an updatable view.
AFAICT, the current patch doesn't use the term, so there is no problem,
but just for those who are preparing propaganda and such.