The next script can be saved, e.g., as “test.sql,” and successfully executed via SQLcl or SQL*Plus connected as a DBA user. It also works via “Run Statement” and “Run Script” in VS Code. However, it produces a syntax error in the VS Code extension 25.3.0, which is shown in the PROBLEMS
tab.
drop role if exists demo_role;
Here's the screenshot showing the complete error message:

It looks like the Parser in the VS Code extension does not understand the DROP ROLE IF EXISTS
syntax.