I have a long program (35000 bytes) in a PIC18F4620. During compile it throws up a warning of 'argument out of range'. I can search the .lst file and get the message shown below.
AFAIK it is treating DEBUG as a word value, for example, .....if ((DEBUG) < ($ - 3ffh)).........

How can I find out where in my PBP code the problem lies?

I tried re-declaring all BYTES as WORDS. That did nothing.
I tried re-declaring all WORDS as LONGS. That did nothing.

Part of the 3662 page .LST file follows.

Any suggestions gratefully received.
BrianT


LOC OBJECT CODE LINE SOURCE TEXT
VALUE

M else
M if ((DEBUG) < ($ - 3ffh))
001C34 EC28 F000 M call DEBUG
M else
M rcall DEBUG
M endif
M endif
M endif
M endif
02250 DEBUG?C 035h
001C38 0E35 M movlw 035h
M L?CALL DEBUG
M RST?RP
M if (PREV_ALT != 0)
M bcf WDTCON, ADSHR
M PREV_ALT = 0
M endif
M if (PREV_BANK != 0)
M movlb 0
M PREV_BANK = 0
M endif
M
M ifdef USE_LINKER
M call DEBUG
M else
M if ((DEBUG) < 1)
M call DEBUG
M else
M if ((DEBUG) > $)
M call DEBUG
M else
M if ((DEBUG) < ($ - 3ffh))
001C3A EC28 F000 M call DEBUG
M else
M rcall DEBUG
M endif
M endif
M endif
M endif
02251 DEBUG?C 039h
001C3E 0E39 M movlw 039h
M L?CALL DEBUG
M RST?RP
M if (PREV_ALT != 0)
M bcf WDTCON, ADSHR
M PREV_ALT = 0
M endif
M if (PREV_BANK != 0)
M movlb 0
M PREV_BANK = 0
M endif
M
M ifdef USE_LINKER
MPASM 5.42 SEQUENCER VER BM 26 OCTOBER 2011 11-2-2011 15:19:37 PAGE 702


LOC OBJECT CODE LINE SOURCE TEXT
VALUE

M call DEBUG
M else
M if ((DEBUG) < 1)
M call DEBUG
M else
M if ((DEBUG) > $)
M call DEBUG
M else
M if ((DEBUG) < ($ - 3ffh))
001C40 EC28 F000 M call DEBUG
M else
M rcall DEBUG
M endif
M endif
M endif
M endif
02252 DEBUG?C 038h
001C44 0E38 M movlw 038h
M L?CALL DEBUG
M RST?RP
M if (PREV_ALT != 0)
M bcf WDTCON, ADSHR
M PREV_ALT = 0
M endif
M if (PREV_BANK != 0)
M movlb 0
M PREV_BANK = 0
M endif
M
M ifdef USE_LINKER
M call DEBUG
M else
M if ((DEBUG) < 1)
M call DEBUG
M else
M if ((DEBUG) > $)
M call DEBUG
M else
M if ((DEBUG) < ($ - 3ffh))
001C46 EC28 F000 M call DEBUG
M else
M rcall DEBUG
M endif
M endif
M endif
M endif
02253 DEBUG?C 0051Eh
Warning[202]: Argument out of range. Least significant bits used.
001C4A 0E1E M movlw 0051Eh
M L?CALL DEBUG
M RST?RP
M if (PREV_ALT != 0)
M bcf WDTCON, ADSHR
MPASM 5.42 SEQUENCER VER BM 26 OCTOBER 2011 11-2-2011 15:19:37 PAGE 703