#define LABEL
#define TEST 0
#if (LABEL == TEST) // oops--LABEL has no replacement text
#pragma config XINST=ON // oops--this must be disabled at all times
void interrupt myIsr(void) // oops--nothing will trigger this
{ ... }
void interrupt low_priority
isr(void)
{ ... }
void interrupt low_priority // oops--you can have two ISRs
loisr(void) // with the same priority
{ ... }
movlw 20h
movwf LATB
opt asmopt_pop; oops--there was never a state pushed
__ram int ip; // oops -- was this meant to be a pointer?
const __rom int cip; // oops -- was this meant to be a pointer?
This message indicates that the generated output for a function has been duplicated since it has been called from both main-line and interrupt code. It does not indicate a potential code failure. If you do not want function output duplicated, consider using the hybrid stack model (if possible), or restructure your source code.
This option is no longer available and has been ignored.
This specifier is no longer available and has been ignored.
__rom int * ip;
int foobar;
ip = &foobar; // oops -- foobar is in data memory, not program memory
__ram
and __rom
pointer-target specifiers with the same pointer does not make sense. If a pointer
should be able to represent targets in any memory space, do not use either of these
specifiers.
// oops -- you can’t limit ip to only point to objects in ram and
// also only point to objects in rom
__ram __rom int * ip;
Due to memory limits, projects targeting some devices cannot be built. Ensure that the OCG category of optimization is enabled.
long long
to suppress this warning.
long long int result; // oops - this will not be 64-bits wide
The legacy peripheral library was build for the C90 standard and cannot reliably be used for other C standards.
void foo(); // oops -- how will this call be encoded?
int main(void)
{
foo();
}
Psects using the note
psect flag cannot be optimized
and any additional psect flags which request optimization will be ignored. Psects
using the note flag typically contain debug information not related to your project
code.
While printing the memory summary after compilation, the psect information read in from the map file was malformed.
This is an internal compiler error. Contact Microchip Technical Support with details.