Просмотр исходного кода

pexpr.pas, post_comp_expr_gendef:
This is not the result you are looking for: The result of "postfixoperators" is only set to true if either "again" was "true" once or the node was changed to an errornode. So using the result for deciding whether we overwrite the def or not is incorrect. So just call "postfixoperators" and process the returned node accordingly.

git-svn-id: branches/svenbarth/generics@19731 -

svenbarth 14 лет назад
Родитель
Сommit
aca2bd83c7
1 измененных файлов с 5 добавлено и 5 удалено
  1. 5 5
      compiler/pexpr.pas

+ 5 - 5
compiler/pexpr.pas

@@ -2975,11 +2975,11 @@ implementation
         { handle potential typecasts, etc }
         p1:=handle_factor_typenode(def,false,again,nil,false);
         { parse postfix operators }
-        if postfixoperators(p1,again,false) then
-          if assigned(p1) and (p1.nodetype=typen) then
-            def:=ttypenode(p1).typedef
-          else
-            def:=generrordef;
+        postfixoperators(p1,again,false);
+        if assigned(p1) and (p1.nodetype=typen) then
+          def:=ttypenode(p1).typedef
+        else
+          def:=generrordef;
       end;
 
 {****************************************************************************