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 L46: SFR SYMBOL HAS DIFFERENT VALUES

*** WARNING L46: SFR SYMBOL HAS DIFFERENT VALUES SYMBOL: ScdIsr MODULE: .\obj\scd.obj (SCD) DEFINED: .\obj\scd.obj (SCD)

I defined SCDISR in a header file:

sfr SCDISR = 0xC0;

there is no SCDISR anywhere, why I got this warning/

*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS SYMBOL: t MODULE: .\obj\extalgo.obj (EXTALGO) DEFINED: .\obj\eeprom.obj (EEPROM)

I only defined t in eeprom.c as a local variable, but I got this error.

Parents
  • Oh, and one more thing:

    SYMBOL: ScdIsr
    
    sfr SCDISR = 0xC0;
    

    You're not by some strange fate using the linker in case-insensitive mode, are you? If so, that may well be the root of your problem. The linker is complaining about a ScdIsr with mixed upper and lower case letters, while the symbol you searched for is all upper case.

Reply
  • Oh, and one more thing:

    SYMBOL: ScdIsr
    
    sfr SCDISR = 0xC0;
    

    You're not by some strange fate using the linker in case-insensitive mode, are you? If so, that may well be the root of your problem. The linker is complaining about a ScdIsr with mixed upper and lower case letters, while the symbol you searched for is all upper case.

Children