Keil Logo Arm Logo

BL51: WARNING L16 (UNCALLED FUNCTION) USING CODE BANKING


Information in this article applies to:

  • C251 Version 3.x
  • C51 Version 6.x

QUESTION

I have a complex application with function pointers and code banking. To avoid correcting all the function references, I have used the linker directive NOOVERLAY, but I still get the following linker warning:

WARNING L16: UNCALLED FUNCTION, IGNORED FOR OVERLAY PROCESS

How can I avoid this warning?

ANSWER

When you use function pointers and code banking, the linker needs exact information about the call tree of your program. This information is required to determine the function calls that require an entry in the INTER-BANK CALL TABLE. Without this information, the linker cannot ensure that the correct code bank is selected for a function that is indirectly called from a different code bank. Therefore, it is also essential that you supply correct call tree information for a code banking application.

MORE INFORMATION

  • Refer to Function Pointers in the BL51 User's Guide.
  • Refer to Application Note 129: Function Pointers in C51 for a complete discussion of all the ramifications of using function pointers with the C51 compiler.
  • Refer to Warning L16 in the BL51 User's Guide.
  • Refer to Warning L16 in the LX51 User's Guide.

SEE ALSO

Last Reviewed: Friday, November 16, 2007


Did this article provide the answer you needed?
 
Yes
No
Not Sure
 

Keil logo

Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.