User1 wants to compile a stored procedure owned by another schema, say User2 schema.

The procedure begins with
CREATE OR REPLACE PROCEDURE user2.procedureABC AS ...
(Notice the porcedure explicitely mentions the schema owner)

All privs for the proc have been granted to User1:
User2> grant execute, debug, all on procedureABC to user1;

My problem is User1 still cannot compile the procedure from his own schema. One solution is to grant the system privilege "Alter any procedure" - this works but now User1 can compile any procedure in any schema.

Please advise.

Thank you!