anchor.diff:  {$endif}
   
   interface
  -  uses {$ifdef UNITSCOPENAMES}System.Types{$else}Types{$endif},
  -       {$ifdef MSWINDOWS}{$ifdef UNITSCOPENAMES}Winapi.Windows{$else}Windows{$endif}{$endif}
  -       {$ifdef POSIX}Posix.String_, Posix.SysStat, Posix.Unistd{$endif};
  +  uses {$ifdef CONDITIONALEXPRESSIONS}
  +         {$ifdef UNITSCOPENAMES}System.Types{$else}Types{$endif},
  +         {$ifdef MSWINDOWS}{$ifdef UNITSCOPENAMES}Winapi.Windows{$else}Windows{$endif}{$endif}
  +         {$ifdef POSIX}Posix.String_, Posix.SysStat, Posix.Unistd{$endif};
  +       {$else}
  +         Windows;
  +       {$endif}
   
   type
     // standard types
  
positive.code:       Value := MemoryManager.BrainMM.RegetMem(Value, NativeUInt(NewSize));
        P := Value;
        if (Value = nil) then
          System.Error(reOutOfMemory);
      end else
      begin
        RecallGetMem(nil, NewSize, P);
  
negative.code:   {$ifdef CPUX86}
      lea eax, [ECX].TK1LineSmall.ItemSet.VHigh32
      test edx, edx
      DB $0F, $44, $C8 // cmovz ecx, eax
      mov edx, [ecx]
      bsf eax, edx
      jz @retrieve_penalty
  