This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Warning:multiple call to a segment

Hi
i have written a ISR for external intr 0 and from this routine i am calling other functions.
On compiling above routines i am getting following warning

Warning:Multiple call to segment
Caller1:?PR?ex0_ISR?main
Caller2:?C_C51STARTUP

(where ex0 is the name of isr given in file)
there was same warning for each function which i had called from isr
Can anybody give me the reason for this ?
and solution ?

Parents
  • Erik is right: unlike "normal" 'C', C51 functions are not inherently reentrant.

    The linker is warning you that there is a possibility that the function might be called again from the interrupt while it is already executing in the non-interrupt code. Only you can tell whether this could actually ever happen in practice and, if it could, whether it would be safe...

Reply
  • Erik is right: unlike "normal" 'C', C51 functions are not inherently reentrant.

    The linker is warning you that there is a possibility that the function might be called again from the interrupt while it is already executing in the non-interrupt code. Only you can tell whether this could actually ever happen in practice and, if it could, whether it would be safe...

Children
No data