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

Compiler isn't converting float to INT8 properly

I'm using Microvision 4
C compiler Armcc.Exe v4.0.0.524
When this compiler converts a floating point number (single precision) to INT8 it doesn't handle negative values properly.
For example
INT8 Function::Convertnumber(F32 number)
{ INT8 return; return = number;
}

this only works for positive numbers. If a negative value is passed into the function 0 is returned only. Seems like a bug in the compiler. I can't find any errata concerning this but i'm wondering if anyone else has noticed this problem and how it was solved?

Parents Reply Children