Bad ansistring const value when empty
Original Reporter info from Mantis: sametflo
-
Reporter name: Sam
Original Reporter info from Mantis: sametflo
- Reporter name: Sam
Description:
Since B = '', the code below should write
start&LtPos;ins:testcom>&LtPos;ins:testa>A&LtPos;/ins:testa>&LtPos;/ins:testcom>end
but write
start&LtPos;ins:testcom>&LtPos;ins:testa>A&LtPos;/ins:testa>&LtPos;/ins:testcom>&LtPos;ins:testcom>&LtPos;ins:testa>A&LtPos;/ins:testa>&LtPos;/ins:testcom>end
Steps to reproduce:
Just run the code below:
function WS_XML(const cle, valeur: string): string;
begin
if valeur <> '' then
result := '<' + cle + '>' + valeur + '</' + cle + '>';
end;
function Req(const A, B: string): string;
begin
result := 'start' +
WS_XML('ins:testcom', WS_XML('ins:testa', A)) +
WS_XML('ins:testcom', WS_XML('ins:testb', B)) +
'end';
end;
begin
writeln(Req('A', ''));
end.
Mantis conversion info:
- Mantis ID: 38092
- OS: Win10
- OS Build: 20H2
- Platform: Win32
- Version: 3.2.0