Compiler AV when a unit's source can not be found when a ppu needs a recompile
Original Reporter info from Mantis: Joost
-
Reporter name: Joost van der Sluis
Original Reporter info from Mantis: Joost
- Reporter name: Joost van der Sluis
Description:
When a unit can't be found, the compiler crashes instead of printing an error. This is introduced in r20583, the following patch hides the problem but is not a real solution, offcourse.
Index: compiler/fppu.pas
===================================================================
--- compiler/fppu.pas (revision 20668)
+++ compiler/fppu.pas (working copy)
@@ -1629,9 +1629,9 @@
break;
pu:=tused_unit(pu.next);
end;
- if assigned(pu) then
+ {if assigned(pu) then
MessagePos2(pu.unitsym.fileinfo,unit_f_cant_find_ppu,realmodulename^,loaded_from.realmodulename^)
- else
+ else}
Message2(unit_f_cant_find_ppu,realmodulename^,loaded_from.realmodulename^);
end
else
Compiler backtrace:
CompilinAn unhandled exception occurred at $0000000000581D50:
EAccessViolation: Access violation
$0000000000581D50 line 1633 of fppu.pas
$0000000000581507 line 1374 of fppu.pas
$0000000000581BEA line 1599 of fppu.pas
$0000000000581507 line 1374 of fppu.pas
$0000000000581BEA line 1599 of fppu.pas
$0000000000581507 line 1374 of fppu.pas
$0000000000581BEA line 1599 of fppu.pas
$00000000005812CA line 1312 of fppu.pas
$0000000000581BEA line 1599 of fppu.pas
$00000000005812CA line 1312 of fppu.pas
$0000000000581BEA line 1599 of fppu.pas
$00000000005812CA line 1312 of fppu.pas
$0000000000581BEA line 1599 of fppu.pas
$000000000058CFE8 line 842 of pmodules.pas
$000000000058DF6D line 1212 of pmodules.pas
$0000000000572E68 line 395 of parser.pasg dmmain.pp
Fatal: Compilation aborted
Mantis conversion info:
- Mantis ID: 21607
- OS: linux
- OS Build: Fedora 15
- Build: r20583
- Platform: x86_64
- Version: 2.7.1
- Fixed in version: 2.6.1
- Fixed in revision: 20944 (#2a4014ef)