SW500009 Microchip Technology, SW500009 Datasheet - Page 379

HI-TECH FOR DSPIC/PIC24

SW500009

Manufacturer Part Number
SW500009
Description
HI-TECH FOR DSPIC/PIC24
Manufacturer
Microchip Technology
Type
Compilerr
Series
PIC24 & DsPICr
Datasheet

Specifications of SW500009

Supported Families
PIC24
Core Architecture
PIC, DsPIC
Software Edition
Standard
Kit Contents
Software And Docs
Tool Type
Compiler
Mcu Supported Families
PIC24 MCUs And DsPIC DSCs
Lead Free Status / RoHS Status
Not applicable / RoHS Compliant
For Use With/related Products
DSPIC3X/PIC24
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
Other names
025
778-1003
778-1003
Error and Warning Messages
code cannot be removed, but the code generator will adjust the code so that the comparison is not
performed on the first pass of the loop; only on the subsequent passes. This may not reduce code
size, but it will speed program execution.
(758) constant conditional branch: possible use of "=" instead of "=="
There is an expression inside an if or other conditional construct, where a constant is being assigned
to a variable. This may mean you have inadvertently used an assignment = instead of a compare ==,
e.g.:
will assign the value 4 to a, then , as the value of the assignment is always true, the comparison can
be omitted and the assignment to b always made. Did you mean:
which checks to see if a is equal to 4.
(759) expression generates no code
This expression generates no output code. Check for things like leaving off the parentheses in a
function call, e.g.:
Some devices require that special function register need to be read to clear hardware flags. To
accommodate this, in some instances the code generator does produce code for a statement which
only consists of a variable ID. This may happen for variables which are qualified as volatile.
Typically the output code will read the variable, but not do anything with the value read.
(760) portion of expression has no effect
Part of this expression has no side effects, and no effect on the value of the expression, e.g.:
/* this can never be false; always perform the true statement */
if(a == 4)
int fred;
fred;
int a, b, c;
a = b,c; /* “b” has no effect, was that meant to be a comma? */
int a, b;
/* this can never be false; always perform the true statement */
if(a = 4)
b = 6;
b = 6;
/* this is valid, but has no effect at all */
(Code Generator)
(Code Generator)
(Code Generator)
365

Related parts for SW500009