Hi,
I recently update my CodeWarrior compiler with a latest patch.
As a consequence to this, re-compiling previous release codes resulted in a different checksum and size. Be aware of this issue if your process replies on checksum to validate images.
The second and more important problem is that there seems to be a bug in the new patch: In the following code:
//code1if( (msa_err==MSA_STS_MODULE_BUSY || msa_err==MSA_STS_STILL_PROCESSING) && (count <= 5)){ // Increment count++; // delay //… // Do Something printfUART(1,"DELAY msa_err(0x%X), count==%d",msa_err, count);}printfUART(1,"msa_err(0x%X), count==%d",msa_err, count);
The body of the if statement never executes (when condition is true) and count remains 0.
If I replace the code with
//code2int b1= (msa_err==MSA_STS_MODULE_BUSY || msa_err==MSA_STS_STILL_PROCESSING);int b2= (count<= 5);int b3 = b1 && b2;if(b3){ // same a sabove}
It works well.
This has been observed with Level1 optimization.
Attached is a list of plugins.
S.
Hello
You need to submit a service request for that.
I would recommend you to submit a service request for that.
Click here to submit a service request.
Make sure to attach a reproducible project and installed product information to the service request.
To generate the required information:
- Start CodeWarrior
- Open the project
- Select "Help" -> "Pack and Go" and follow instructions on the screen.
Attach the generated .zip file to the SR.
CrasyCat