If I want to make sure that the changes I have made in a .i file are being used, I put a MESSAGE "Inside something.i" VIEW-AS ALERT-BOX command at the start of the .i file just so I can be sure it is being used correctly.
Check where the .i file is. Try DISPLAY SEARCH ("something.i") FORM "X(70)" to see where the .i file actually is. I'm guessing that you have 2 copies of the .i file, one in a program directory and one somewhere else in the PROPATH, so the program is refering to the other .i file.
Also, if you are calling the .p from another program and you are using compiled code, you will need to compile the .p before you call it.
By the way, you can compile a .i file and the compiled file is a .r file. There's no reason to do it, though. It can cause problems if you have something.p that has something.i as an include file and you compile something.p and something.i - you overwrite something.r with the compiled include file, which can be annoying.