For a query like this:
WITH
abc AS (select 1 AS x),
def AS (
WITH
abc AS (select 1 AS y)
select * from abc
)
select abc.x, def.y from abc, def
H2 in version 2.3.230 throws BadGrammarException because of the duplicate abc alias. H2 in version 2.2.224 does not, and accepts this query. The query seems to be correct by SQL standards.