Generally, this error is raised when the compiler cannot convert the specified type to the expected type. Examples:
z = -(z==0) ; - cannot operate on boolean expressions int i = 3/2 ; 3/2 is a floating-point number
You should explicitly provide a conversion to the desired type:
z = !(z==0) ; ! operates on boolean expressions int i = round(3/2)
This error also occurs when settings have the wrong type. Example:
default: maxiter = (100,0) ; maxiter should be of type int
Here, you should just change it into the correct type:
default: maxiter = 100
The third reason for this error is if you put a type keyword (complex, float, int or bool) in front of an assignment to a predefined symbol, and the type keyword does not match the type of the predefined symbol. Example:
float z = 0
Since z is a predefined symbol of complex type, you cannot put the float keyword in front of the assignment. Just leave it out or change it to complex:
z = 0 complex z = 0
See Also
Errors