Error while conditional compilation of float values.

2 Ansichten (letzte 30 Tage)
vishwajit jadhav
vishwajit jadhav am 5 Apr. 2017
I am using IHME-8.2.0.15 (R2011b) version of polyspace. My code has conditional compilation part where it compares(<= or >=) two float values in #if condition. The polyspace throws error as "expression must have integral type" while compilation. Is there any way to allow float comparision in polyspace?

Antworten (1)

Vandana Ravichandran
Vandana Ravichandran am 12 Apr. 2017
Bearbeitet: Vandana Ravichandran am 12 Apr. 2017
While comparing floating-point numbers, it is invalid to use equality (==) or inequality (!=). There are two exceptions to this: when one of the operands is 0.0 because zero can be represented exactly, and when comparing a variable against itself such as foo == foo or foo != foo. However, it should be possible to use a different operator such as '>' or '<'.
Refer to the example listed on the following page:
  2 Kommentare
vishwajit jadhav
vishwajit jadhav am 13 Apr. 2017
Hi Vandana,Thank you for your answer.Polyspace does not allow any kind of comparision('<','>','<=','>=') of two different values.Is there any way to make polyspace ignore error?
Alexandre De Barros
Alexandre De Barros am 14 Apr. 2017
Hi vishwajit,
can you confirm that the floats are used in the preprocessor directives like:
#if VALUE >= 1.0
If yes, what is the name of your compiler?
And can you show me the #if line?
Alex

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by