Unless IAR C is very far from standard C, you can't do what you're trying to do. The goto and label must be in the same function. If you can deal with the code space, you can write your current functions as macros and let the compiler generate the code inline. Are you really sure stack space is something you need to worry about? Does IAR C store anything other than return addresses on the hardware stack? I've had issues with stack space in the older PICs, but I have yet to write code for the PIC18s that had a call tree deep enough to overflow the stack. -Mike -----Original Message----- From: pic microcontroller discussion list [mailto:PICLIST@MITVMA.MIT.EDU] On Behalf Of MSullivan Sent: Tuesday, April 13, 2004 3:55 PM To: PICLIST@MITVMA.MIT.EDU Subject: goto instruction ??? , IAR C compilerfor [PIC] 18F6720 I have an IAR C compiler, and PIC 18F6720 What I am wanting to do is avoid function calls inside of interrupt routine to keep stack size small, but want to keep serial , flash , etc. in sepparate .C files. can I do the following? How do I do the linkage of the label address in a .h header file ? -------------------------- file main.c //interrupt routine goto LABEL1; RETURN_LABEL1: goto LABEL2; RETURN_LABEL2: ---------------------------- file serial.c LABEL1: //serial communication interrupt code goto RETURN_LABEL1 ; ----------------------------- Mark Sullivan -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details. -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.