raise
although the function clearly has one. alter session set plsql_warnings = 'enable:all'; create or replace function tq84_plsql_warning(p varchar2) return varchar2 authid definer as ret varchar2(1); begin select * into ret from dual where dummy = p; return ret; exception when others then if sysdate < date '2021-12-12' then return 'x'; end if; raise; end tq84_plsql_warning; / show errors
raise
or raise_application_error
statements can be prevented by using the suppresses_warning_6009
pragma.