Something was changed in `.map` file format since **Delphi 2010** and **CodeCoverage32** threat `abstract` methods as executed non-covered code. ### Project settings Linking / Map file: `Detailed` ### Command Line (32-bit) `CodeCoverage32 -e Project.exe -m Project.map -u SampleUnit -od Coverage -html` ### Command Line (64-bit) `CodeCoverage64 -e Project.exe -m Project.map -u SampleUnit -od Coverage -html` ## Minimal code to reproduce ### Project.dpr ```delphi program Project; {$APPTYPE CONSOLE} uses SampleUnit in 'SampleUnit.pas'; begin with TClassB.Create do try Method; finally Free; end; end. ``` ### SampleUnit.pas ```delphi unit SampleUnit; interface type TClassA = class public procedure Method; virtual; abstract; end; TClassB = class(TClassA) public procedure Method; override; end; implementation procedure TClassB.Method; begin end; end. ``` ## Coverage Report |Compiler|Lines|Covered|Covered %|Report| |:---|:---:|:---:|---:|:---| | Delphi 5 | 2 | 2 | 100 % |<img src="https://user-images.githubusercontent.com/14204888/77255810-9c7a5580-6c83-11ea-937b-25da2d530160.png" alt="Report" width="260"/>| | Delphi 6 | 2 | 2 | 100 % |<img src="https://user-images.githubusercontent.com/14204888/77255810-9c7a5580-6c83-11ea-937b-25da2d530160.png" alt="Report" width="260"/>| | Delphi 7 | 2 | 2 | 100 % |<img src="https://user-images.githubusercontent.com/14204888/77255810-9c7a5580-6c83-11ea-937b-25da2d530160.png" alt="Report" width="260"/>| | Delphi 2005 | 2 | 2 | 100 % |<img src="https://user-images.githubusercontent.com/14204888/77255810-9c7a5580-6c83-11ea-937b-25da2d530160.png" alt="Report" width="260"/>| | Delphi 2006 | 1 | 1 | 100 % |<img src="https://user-images.githubusercontent.com/14204888/77256143-bddc4100-6c85-11ea-91b8-a3cba9e7723b.png" alt="Report" width="260"/>| | Delphi 2009 | 1 | 1 | 100 % |<img src="https://user-images.githubusercontent.com/14204888/77256143-bddc4100-6c85-11ea-91b8-a3cba9e7723b.png" alt="Report" width="260"/>| | Delphi 2010 | 2 | 1 | **50 %** |<img src="https://user-images.githubusercontent.com/14204888/77256216-3fcc6a00-6c86-11ea-8f10-4747c7969a81.png" alt="Report" width="260"/>| | Delphi XE | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi XE2<br/>32-bit | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi XE2<br/>64-bit | 4 | 3 | **75 %** |<img src="https://user-images.githubusercontent.com/14204888/77256844-19a8c900-6c8a-11ea-97e6-b318ab07d1db.png" alt="Report" width="260"/>| | Delphi XE3<br/>32-bit | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi XE3<br/>64-bit | 4 | 3 | **75 %** |<img src="https://user-images.githubusercontent.com/14204888/77256844-19a8c900-6c8a-11ea-97e6-b318ab07d1db.png" alt="Report" width="260"/>| | Delphi XE4<br/>32-bit | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi XE4<br/>64-bit | 4 | 3 | **75 %** |<img src="https://user-images.githubusercontent.com/14204888/77256844-19a8c900-6c8a-11ea-97e6-b318ab07d1db.png" alt="Report" width="260"/>| | Delphi XE5<br/>32-bit | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi XE5<br/>64-bit | 4 | 3 | **75 %** |<img src="https://user-images.githubusercontent.com/14204888/77256844-19a8c900-6c8a-11ea-97e6-b318ab07d1db.png" alt="Report" width="260"/>| | Delphi XE6<br/>32-bit | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi XE6<br/>64-bit | 4 | 3 | **75 %** |<img src="https://user-images.githubusercontent.com/14204888/77256844-19a8c900-6c8a-11ea-97e6-b318ab07d1db.png" alt="Report" width="260"/>| | Delphi XE7<br/>32-bit | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi XE7<br/>64-bit | 4 | 3 | **75 %** |<img src="https://user-images.githubusercontent.com/14204888/77256844-19a8c900-6c8a-11ea-97e6-b318ab07d1db.png" alt="Report" width="260"/>| | Delphi XE8<br/>32-bit | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi XE8<br/>64-bit | 4 | 3 | **75 %** |<img src="https://user-images.githubusercontent.com/14204888/77256844-19a8c900-6c8a-11ea-97e6-b318ab07d1db.png" alt="Report" width="260"/>| | Delphi 10.0 Seattle<br/>32-bit | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi 10.0 Seattle<br/>64-bit | 4 | 3 | **75 %** |<img src="https://user-images.githubusercontent.com/14204888/77256844-19a8c900-6c8a-11ea-97e6-b318ab07d1db.png" alt="Report" width="260"/>| | Delphi 10.1 Berlin<br/>32-bit | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi 10.1 Berlin<br/>64-bit | 4 | 3 | **75 %** |<img src="https://user-images.githubusercontent.com/14204888/77256844-19a8c900-6c8a-11ea-97e6-b318ab07d1db.png" alt="Report" width="260"/>| | Delphi 10.2 Tokyo<br/>32-bit | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi 10.2 Tokyo<br/>64-bit | 4 | 3 | **75 %** |<img src="https://user-images.githubusercontent.com/14204888/77256844-19a8c900-6c8a-11ea-97e6-b318ab07d1db.png" alt="Report" width="260"/>| | Delphi 10.3 Rio<br/>32-bit | 3 | 2 | **66 %** |<img src="https://user-images.githubusercontent.com/14204888/77256629-e44fab80-6c88-11ea-81ce-e9da8a5dc156.png" alt="Report" width="260"/>| | Delphi 10.3 Rio<br/>64-bit | 4 | 3 | **75 %** |<img src="https://user-images.githubusercontent.com/14204888/77256844-19a8c900-6c8a-11ea-97e6-b318ab07d1db.png" alt="Report" width="260"/>|
Something was changed in
.mapfile format since Delphi 2010 and CodeCoverage32 threatabstractmethods as executed non-covered code.Project settings
Linking / Map file:
DetailedCommand Line (32-bit)
CodeCoverage32 -e Project.exe -m Project.map -u SampleUnit -od Coverage -htmlCommand Line (64-bit)
CodeCoverage64 -e Project.exe -m Project.map -u SampleUnit -od Coverage -htmlMinimal code to reproduce
Project.dpr
SampleUnit.pas
Coverage Report
32-bit
64-bit
32-bit
64-bit
32-bit
64-bit
32-bit
64-bit
32-bit
64-bit
32-bit
64-bit
32-bit
64-bit
32-bit
64-bit
32-bit
64-bit
32-bit
64-bit
32-bit
64-bit