Please find a simple test project attached

Note: If you put the StrUtils at the end of the uses list the program compiles.


Pascal

>     Pascal Riekenberg via fpc-devel <fpc-devel@lists.freepascal.org> hat am 
> 05.01.2021 08:55 geschrieben:
> 
> 
>     Since i updated my local fpc trunk some of my programs do not compile 
> anymore. Version from before christmas was okay.
> 
>     The compiler can't find the function "IfThen(AValue: Boolean; const 
> ATrue: string; const AFalse: string): string;" of StrUtils.
> 
>     Instead it only seems to see the functions in Math.
> 
>     SQLGenerator.pas(294,9) Error: Incompatible type for arg no. 3: Got 
> "Char", expected "Double"
>     math.pp(2523,10) Hint: Found declaration: IfThen(Boolean;const 
> Double;const Double=` 0.00000000000000000000E+0000`):Double;
>     math.pp(2518,10) Hint: Found declaration: IfThen(Boolean;const 
> Int64;const Int64=`0`):Int64;
>     math.pp(2513,10) Hint: Found declaration: IfThen(Boolean;const 
> LongInt;const LongInt=`0`):LongInt;
>     SQLGenerator.pas(299,9) Error: Incompatible type for arg no. 3: Got 
> "Constant String", expected "Double"
>     math.pp(2523,10) Hint: Found declaration: IfThen(Boolean;const 
> Double;const Double=` 0.00000000000000000000E+0000`):Double;
>     math.pp(2518,10) Hint: Found declaration: IfThen(Boolean;const 
> Int64;const Int64=`0`):Int64;
>     math.pp(2513,10) Hint: Found declaration: IfThen(Boolean;const 
> LongInt;const LongInt=`0`):LongInt;
>     SQLGenerator.pas(305,7) Error: Incompatible type for arg no. 3: Got 
> "Constant String", expected "Double"
>     math.pp(2523,10) Hint: Found declaration: IfThen(Boolean;const 
> Double;const Double=` 0.00000000000000000000E+0000`):Double;
>     math.pp(2518,10) Hint: Found declaration: IfThen(Boolean;const 
> Int64;const Int64=`0`):Int64;
>     math.pp(2513,10) Hint: Found declaration: IfThen(Boolean;const 
> LongInt;const LongInt=`0`):LongInt;
>     SQLGenerator.pas(442,60) Error: Incompatible type for arg no. 3: Got 
> "Constant String", expected "Double"
>     math.pp(2523,10) Hint: Found declaration: IfThen(Boolean;const 
> Double;const Double=` 0.00000000000000000000E+0000`):Double;
>     math.pp(2518,10) Hint: Found declaration: IfThen(Boolean;const 
> Int64;const Int64=`0`):Int64;
>     math.pp(2513,10) Hint: Found declaration: IfThen(Boolean;const 
> LongInt;const LongInt=`0`):LongInt;
> 
>     If i qualify IfThen with "StrUtils." it compiles.
> 
> 
>     Pascal
> 
>     _______________________________________________
>     fpc-devel maillist - fpc-devel@lists.freepascal.org
>     https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
> 

<<attachment: project1.zip>>

_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to