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

BL51 warning L15 and bit returning

Hi to all.
I have some functions that are called from different ISR and are NOT declared as reentrant. Both functions return BOOL which is typedef as follows:

typedef unsigned char BOOL;

(the code compiled and linked without warnings)
Trying to optimize the code, I decided to change this declaration, to see if less code is generated:

typedef bit BOOL;

And I gain some bytes of code. But now, the linker gives L15 Warning:

*** WARNING L15: MULTIPLE CALL TO SEGMENT
SEGMENT: ?PR?_DPM_RELEASEBLOCK?DPM_ACCESS_FUNCTIONS
CALLER1: ?PR?EXTINT_IRQ_HANDLER?MAIN
CALLER2: ?PR?TIMER2_IRQ_HANDLER?MAIN

Why this warning was not issued before? The compiler did not inline those calls (they are in different modules) and I checked the assembler code. How is related the bit declaration in the return type with the linker warning?

Thanks a lot.