parse
BEGIN
  INSERT INTO xy VALUES (1, 2);
  ROLLBACK;
  INSERT INTO xy VALUES (3, 4);
END
----
BEGIN
INSERT INTO xy VALUES (1, 2);
ROLLBACK;
INSERT INTO xy VALUES (3, 4);
END;
 -- normalized!
BEGIN
INSERT INTO xy VALUES ((1), (2));
ROLLBACK;
INSERT INTO xy VALUES ((3), (4));
END;
 -- fully parenthesized
BEGIN
INSERT INTO xy VALUES (_, _);
ROLLBACK;
INSERT INTO xy VALUES (_, _);
END;
 -- literals removed
BEGIN
INSERT INTO _ VALUES (1, 2);
ROLLBACK;
INSERT INTO _ VALUES (3, 4);
END;
 -- identifiers removed

parse
BEGIN
  INSERT INTO xy VALUES (1, 2);
  ROLLBACK AND NO CHAIN;
  INSERT INTO xy VALUES (3, 4);
END
----
BEGIN
INSERT INTO xy VALUES (1, 2);
ROLLBACK;
INSERT INTO xy VALUES (3, 4);
END;
 -- normalized!
BEGIN
INSERT INTO xy VALUES ((1), (2));
ROLLBACK;
INSERT INTO xy VALUES ((3), (4));
END;
 -- fully parenthesized
BEGIN
INSERT INTO xy VALUES (_, _);
ROLLBACK;
INSERT INTO xy VALUES (_, _);
END;
 -- literals removed
BEGIN
INSERT INTO _ VALUES (1, 2);
ROLLBACK;
INSERT INTO _ VALUES (3, 4);
END;
 -- identifiers removed

parse
BEGIN
  INSERT INTO xy VALUES (1, 2);
  ROLLBACK AND CHAIN;
  INSERT INTO xy VALUES (3, 4);
END
----
BEGIN
INSERT INTO xy VALUES (1, 2);
ROLLBACK AND CHAIN;
INSERT INTO xy VALUES (3, 4);
END;
 -- normalized!
BEGIN
INSERT INTO xy VALUES ((1), (2));
ROLLBACK AND CHAIN;
INSERT INTO xy VALUES ((3), (4));
END;
 -- fully parenthesized
BEGIN
INSERT INTO xy VALUES (_, _);
ROLLBACK AND CHAIN;
INSERT INTO xy VALUES (_, _);
END;
 -- literals removed
BEGIN
INSERT INTO _ VALUES (1, 2);
ROLLBACK AND CHAIN;
INSERT INTO _ VALUES (3, 4);
END;
 -- identifiers removed

error
BEGIN
  INSERT INTO xy VALUES (1, 2);
  ROLLBACK foo;
  INSERT INTO xy VALUES (3, 4);
END
----
at or near "foo": syntax error
DETAIL: source SQL:
BEGIN
  INSERT INTO xy VALUES (1, 2);
  ROLLBACK foo;
           ^
