r48002 breaks determination of overloaded functions: IfThen (Math vs. StrUtils)
Original Reporter info from Mantis: PascalR @PascalRiekenberg
-
Reporter name: Pascal Riekenberg
Original Reporter info from Mantis: PascalR @PascalRiekenberg
- Reporter name: Pascal Riekenberg
Description:
Attached project does not compile after r48002.
Steps to reproduce:
Compile attched project.
Compilation can be fixed by either moving the StrUtils unit to the end of the uses clause or by qualifying the IfThen function with the unit name (StrUtils).
Additional information:
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;
Mantis conversion info:
- Mantis ID: 38310
- OS: Windows 10 x64
- OS Build: 2004
- Build: r48002
- Platform: i386
- Version: 3.3.1
- Fixed in version: 3.3.1
- Fixed in revision: 48088 (#57d9884d)