It seems that no matter what I define under Preferences->Database->PL/SQL Compiler->Optimization Level, everything is always compiled against optimization level 2.
Cant reproduce. Steps:
CREATE OR REPLACE PROCEDURE OPTIM_LEVEL0 AS
Set Tools->Preferences->PL/SQLCompiler->Optimization Level=0
Press Compile cogwheel toolbutton.
Go to Details tab, witness PLSQL_OPTIMIZE_LEVEL=0
Repeat these steps for level = 1 and 2.
Strange. I was definitely seeing this problem the first time I fired up SQL Developer 4. Now it is working properly as you described. Thanks for looking.