Explorar el Código

* Do not insert a widestring <-> ansistring conversion node when checking for (un)equal empty string.

Michaël Van Canneyt hace 2 años
padre
commit
3eee2d8ff3
Se han modificado 1 ficheros con 4 adiciones y 2 borrados
  1. 4 2
      compiler/nadd.pas

+ 4 - 2
compiler/nadd.pas

@@ -2837,9 +2837,11 @@ implementation
                   st_unicodestring :
                     begin
                       if not(is_unicodestring(rd)) then
-                        inserttypeconv(right,cunicodestringtype);
+                        if not ((ld.size=0) and (nodetype in [equaln,unequaln])) then
+                          inserttypeconv(right,cunicodestringtype);
                       if not(is_unicodestring(ld)) then
-                        inserttypeconv(left,cunicodestringtype);
+                        if not ((rd.size=0) and (nodetype in [equaln,unequaln])) then
+                          inserttypeconv(left,cunicodestringtype);
                     end;
                   st_ansistring :
                     begin