I must admit it wasn't easy to "extract" the issue, but I guess I've found it.
It looks like the problem is present when there's a quotation mark just after quote_delimiter, like this: q'!'sthing...
Please check below simple package that is showing the error.
You can observe the issue (blank object list and the error from subject) when opening the compiled package or after switching from body view to specification view and then back to the body:
SQL Query
CREATE OR REPLACE PACKAGE pkg_tst IS

  FUNCTION fn_test(in_parm IN VARCHAR2)
    RETURN NUMBER;

END pkg_tst;
/
CREATE OR REPLACE PACKAGE BODY pkg_tst IS

  FUNCTION fn_test(in_parm IN VARCHAR2)
    RETURN NUMBER IS
      l_txt CLOB;
    BEGIN
      l_txt := q'!SELECT '!'||in_parm||q'!' as filtr_name FROM dummy!';
      RETURN 1;
    END fn_test;

END pkg_tst;
/