Giter VIP home page Giter VIP logo

delphi-code-coverage's People

Watchers

 avatar

delphi-code-coverage's Issues

Wrong coverage generated when for units using generics

When you use generics in your code coverage generated for some units that 
should not be covered and not generated for some units that should be covered

What steps will reproduce the problem?

First scenario
1. Use standard generic collection in unit that you are testing
2. In .map file it will look like this

Line numbers for uYourUnit(System.Generics.Collections.pas) segment .text

In this case breakpoints are set and coverage is generated for 
System.Generics.Collections.pas but they should not because this unit is not 
specified in parameters for coverage.

Second scenario
1. Create your own generic class
2. Create unit tests in which you instantiate this class
3. In .map file it will look like this

Line numbers for uYourUnitTest(YourGenericClass.pas) segment .text

In this case coverage for YourGenericClass.pas is not generated because 
uYourUnitTest is not included in parameters, but it actually should be 
generated because YourGenericClass.pas is included in parameters for coverage.


Original issue reported on code.google.com by [email protected] on 26 Apr 2012 at 5:40

Checking out readonly source code gives an error

svn checkout 
http://delphi-code-coverage.googlecode.com/svn/trunk/delphi-code-coverage-read-o
nly

brings:

svn: URL 
'http://delphi-code-coverage.googlecode.com/svn/trunk/delphi-code-coverage-read-
only' doesn't exist

Both at command line and with TortoiseSvn

Original issue reported on code.google.com by [email protected] on 2 May 2012 at 1:37

Memory leak of TDebugger

In the DPR, there a TDebugger object is created but never freed.

Fix:

begin
  try
    Debugger := TDebugger.Create;
    try
      Debugger.start();
    finally
      Debugger.Free;
    end;
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.message);
  end;
end.

Original issue reported on code.google.com by [email protected] on 31 Jul 2010 at 5:31

Percent vlaues for files differ in HTML and XML file

They differ for all units. Percent of covered lines in XML is much higher than 
in HTML report. Example:

<srcfile name="ShellControls.pas"> 
  <coverage value="100% (12/12)" type="class, %"/> 
  <coverage value="100% (371/371)" type="method, %"/> 
  <coverage value="60% (4341/7176)" type="block, %"/> 
  <coverage value="60% (4341/7176)" type="line, %"/>


Unit Name   Number of covered lines     Number of lines (which generated code) 
    Percent(s) covered
ShellControls   749     3549    21%

Original issue reported on code.google.com by [email protected] on 3 May 2012 at 4:02

Source file folder option (-sd) needs double slash

CodeCoverage fails when using simple '\' to feeds -sd option.
I must give \\ in the folder path.

Either add compatibility with single '\', or add a comment in the documentation.

Original issue reported on code.google.com by trident.job on 5 Jul 2010 at 6:56

Coverage XML report not quite EMMA compliant for CruiseControl.NET

What steps will reproduce the problem?
1. Generage coverage report
2. Load into CruiseControl.NET
3. View Emma report

What is the expected output? What do you see instead?

I would expect a coverage report to be generated. Nothing is generated/

What version of the product are you using? On what operating system?

Version 0.4

Please provide any additional information below.

The coverage XML report needs to have the summary of the entire project in the 
<all name="all classes"> part, otherwise the emma.xsl report doesn't detect it.

Example output is as follows:

<report>
<stats>
<packages value="8"/>
<classes value="185"/>
<methods value="2061"/>
<srcfiles value="62"/>
<srclines value="13135"/>
</stats>
<data>
<all name="all classes">
<!-- not having this means the report isn't generated -->
<coverage type="class, %" value="100% (185/185)"/>
<coverage type="method, %" value="65%  (1345/2061)"/>
<coverage type="block, %" value="60%  (44997/74846)"/>
<coverage type="line, %" value="64%  (8346.3/13135)"/>
<!-- not having this means the report isn't generated -->
<package name="com.sun.tools.javac.v8.resources">

Original issue reported on code.google.com by [email protected] on 1 Sep 2010 at 3:54

Access violation at address 004D68A0 in module 'CodeCoverage.exe'. Read of address 00000000

What steps will reproduce the problem?
This is my command line:
CodeCoverage -m Tests.map -e Tests.exe -u ShellBrowser ShellControls 
JamControls JamDialogs Shell_Win32 ShellLink ThreadPool JamWorkItems 
JAmSelectionList -sd ..\Source -od CodeCoverageReport -xml -html

What is the expected output? What do you see instead?
Access violation at address 004D68A0 in module 'CodeCoverage.exe'. Read of 
address 00000000

What version of the product are you using? On what operating system?
V1.0 RC1 on Windows 7 x64 with Delphi XE2

Please provide any additional information below.
I can supply Tests.Exe and Tests.map if you like

Original issue reported on code.google.com by [email protected] on 12 Apr 2012 at 1:09

Code review request

Branch name: magicmonty

Purpose of code changes on this branch:

* Refactoring and Cleanup 
* Removed a lot of memory leaks
* Added Compatibility with Delphi 2009

When reviewing my code changes, please focus on:

Please check, if the Code runs on XE and higher

After the review, I'll merge this branch into:
/trunk


Original issue reported on code.google.com by pagansoft on 28 Aug 2012 at 8:00

Memory Leaks

Please turn off mem leak reporting in release builds.

See attachment for reported memory leaks.

Version: 1.0 RC8

Original issue reported on code.google.com by [email protected] on 7 Sep 2012 at 6:36

Attachments:

Integrate inline spurce editing and shortcut for Delphi ( in my case 5 Enterprise ) build all & compile

What steps will reproduce the problem?
1. Run
2. Configure
3. Run Coverage

What is the expected output? What do you see instead?

Standard oput. I still got to toggle to Delphi IDE, do changes, compile and get 
back to this tool...

What version of the product are you using? On what operating system?

RC1

Please provide any additional information below.

Wrell, imho change is straight forward and requiers only CreateProcess() for 
particular dcc32.xe .. :)

Original issue reported on code.google.com by [email protected] on 22 Mar 2012 at 11:52

Executable does not see passed arguments

The new code in version 0.2 correctly reads the parameter arguments from the 
command line. However, in tests with Delphi 2009, the executable does not 
receive the passed parameters. ParamCount always returns 0.

I have added a debug line in StartProcessToDebug and changed the types to 
PWideChar. Maybe there is a problem with CreateProcess? I am using jwa 2.3 from 
June 25.



function TDebugger.StartProcessToDebug(executable: string): Boolean;
var
  StartInfo: TStartupInfo;
  ProcInfo: TProcessInformation;
  CreateOK: Boolean;
  exe, parameters: PWideChar;
begin
  exe := pwidechar(executable);
  parameters := Pwidechar(Configuration.getApplicationParameters);
  writeln('passing: ' + parameters);

  fillchar(StartInfo, sizeof(TStartupInfo), #0);
  fillchar(ProcInfo, sizeof(TProcessInformation), #0);
  StartInfo.cb := sizeof(TStartupInfo);
  CreateOK := CreateProcess(exe, parameters, nil, nil, false,
    CREATE_NEW_PROCESS_GROUP + NORMAL_PRIORITY_CLASS + DEBUG_PROCESS, nil, nil, StartInfo, ProcInfo);
  result := CreateOK = true;
end;


Original issue reported on code.google.com by [email protected] on 30 Jun 2010 at 10:37

Support packages

What steps will reproduce the problem?
1. Run
2. Configure
3. Run Coverage

What is the expected output? What do you see instead?

In-depth BPL analysis

What version of the product are you using? On what operating system?

RC1

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 22 Mar 2012 at 2:53

Support Error highligh based on CallStack for nsisdbg plugin for NSIS 2.46 +

What steps will reproduce the problem?
1. Run NSIS-based installer with nsisdbg plugin enabled
2. Use Installer
3. Debug bugs or erros

What is the expected output? What do you see instead?

Expected output was possibility to trace and see executed plugin code.

Please use labels and text to provide additional information.


Original issue reported on code.google.com by [email protected] on 24 Sep 2012 at 8:59

Extract CSS from HTML

Each HTML  generated page have CSS information embedded.
This could be extracted to a global CSS file.

Original issue reported on code.google.com by trident.job on 4 Mar 2012 at 8:59

rc8 and rc7 have problems testing code which makes use of generics libraries, such as generics.collections

What steps will reproduce the problem?
1. Create a test project for a new function that makes use of TDictionary (part 
of System.Generics.Collections delphi library).
2. write a test for that function.
2. run the test coverage tool (RC7 or RC8) with the following parameters: 
-ife -m project1.map -e project1.exe -u coh.utils.myunit -sd 
c:/coh/source/utils -html 

What is the expected output? What do you see instead?
You should see a 100% code coverage result for the only function in the myunit 
unit.
Instead the code coverage tool will report an "Exception during generation of 
unit coverage for:System.Generics.Defaults.pas exception:I/O error 103" error, 
and the code coverage will be at 99% or a similar value. Also, the report will 
include the Generics.defaults.pas library with a 0% code coverage.

What version of the product are you using? On what operating system?
This problem is absent if you use RC6, it is present in RC7, RC8.  The 
operating system is Windows 7 pro 64bit. Delphi XE2.

Please provide any additional information below.
I believe that the error can be at Debugger.pas, in r111 where the line:
    if (AModuleList.IndexOf(UnitModuleName) > -1) then
was changed to 
    if (AModuleList.IndexOf(ModuleName) > -1) then
I haven't built the delphi-code-coverage project from source, so I cannot 
assert that this is truly the source of the problem.

Original issue reported on code.google.com by [email protected] on 12 Sep 2012 at 1:45

Code coverage statistics do not include dead code

Perhaps I don't understand how I am supposed to use this tool, but I am not 
getting useful statistics (the line by line coverage reporting is GREAT though)

What steps will reproduce the problem?
1. Run the code coverage tool against a unit that has hardly any unit tests. 

What is the expected output? What do you see instead?
I expect to see a very low coverage percentage.

Instead, I get a high percentage.

I'll give you a real example.

We have a Unit with 1430 lines. We have very few unit tests that exercise the 
code in this Unit.

The statistics I get back are

Number of lines covered     173
Number of lines with code gen   270
Line coverage in percent    64%

We are only covering a little more than 10% of the lines in this file. If you 
disregard headers, blank space etc I would still say we only have 20% coverage. 

The tool is only counting lines that "have code gen". I don't see the point of 
this: if a function is not covered by unit tests, it will be dead code, and 
won't appear in the .map file. Isn't this what we should be looking for, and 
adding to our unit tests?? Not just generated code paths that are not called?

This has been my experience of other code coverage tools in other languages.

What version of the product are you using? On what operating system?
0.5



Original issue reported on code.google.com by [email protected] on 7 Mar 2011 at 6:40

DPR files not include in the HTML output

What is the expected output? What do you see instead?

When a DPR is listed in the command line for code coverage, an error is produce:

Exception during generation of unit coverage for:<unit> could not open: 
<unit>.pas


What version of the product are you using?

0.3


Please provide any additional information below.

In the method TCoverageReport.generateUnitReport the following line, when 
added, corrects the issue:

    if not FileExists(sourceFilename) then
      sourceFilename := ChangeFileExt(sourceFilename, '.dpr');

This is placed before "AssignFile(InputFile, sourceFilename);" line.

Original issue reported on code.google.com by [email protected] on 31 Jul 2010 at 5:20

Change some switches

1/ if the "-m" switch is not present use <name>.map where <Name> is the name of 
the exe in "-m" switch. So : 

CodeCoverage -e TestApp.exe -u TestUnit
is equivalent as :

CodeCoverage -e TestApp.exe -m TestApp.map -u TestUnit

2/ use wildcard in "-u" switch ie :
-u *.pas = all the '.pas' files in the directory.

Original issue reported on code.google.com by [email protected] on 25 Oct 2011 at 6:39

Executable doesn't see units in other directories

What steps will reproduce the problem?
1. run a coverage test where the unit isn't in the current directory
2. if you specify the unit name only on the command line, an error is thrown 
(unit source not found)
3. if you specify the unit's relative path name, it is ignored, and the unit 
isn't marked for coverage.

What is the expected output? What do you see instead?

Expecting coverage information for the unit, but I see either nothing, or only 
the summary.

What version of the product are you using? On what operating system?

0.4

Please provide any additional information below.

Should provide ways to specify unit's paths other than the current paths, as it 
stands, it can only give coverage for the unit test units, but not for the 
units tested by the unit test (which are in various other directories, which 
are too numerous to put in the PATH environment variable).

Original issue reported on code.google.com by [email protected] on 30 Aug 2010 at 6:59

Exception when generating coverage for non-existing files

What steps will reproduce the problem?
Compile following project in Delphi XE2 (not sure about older versions)
program Project1;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils,
  Classes,
  Generics.Defaults,
  Generics.Collections;

var
  Dictionary: TObjectDictionary<integer, TComponent>;
begin
  try
    Dictionary := TObjectDictionary<integer, TComponent>.Create;
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
end.

Run code coverage as 
CodeCoverage.exe -e Project1.exe -u Project1 -sd "C:\Documents and 
Settings\Administrator\My Documents\RAD Studio\Projects\test2\"  -lt

What is the expected output? What do you see instead?

got exception
Exception during generation of unit coverage for:System.Generics.Defaults.pas 
could not open:System.Generics.Defaults.pas
Current directory:C:\Documents and Settings\Administrator\My Documents\RAD 
Studio\Projects\test2
Exception during generation of unit coverage for:System.Generics.Defaults.pas 
exception:I/O error 103

With attached patch it will ignore units that are not specified in -u switch

Original issue reported on code.google.com by [email protected] on 6 Mar 2012 at 10:59

Attachments:

Relative path error

1. create a simple project with 100% cover and a \test\ directory for the tests
2. create a cover.bat in \test\ to run CodeCoverage.exe 
3. run the cover.bat 

My project is 100% cover and when I run the codeCoverage in the project 
directory all is OK, when I run in \test\ directory my result is 0% code 
coverage
I Tried the following cover.bat :
CodeCoverage -m "..\project1.map" -e "..\project1.exe" -u "..\Unit1"

CodeCoverage -m "C:\CodeCoverage\project1.map" -e 
"C:\CodeCoverage\project1.exe" -u "C:\CodeCoverage\Unit1"

Environnement : D7, XP, CC 0.5

Original issue reported on code.google.com by [email protected] on 19 Nov 2011 at 10:53

Attachments:

Support "Dead Memory" output

What steps will reproduce the problem?
1. Launch tool
2. Configure tool ( with wizard ... )
3. Run Coverage...

What is the expected output? What do you see instead?

Ability to have seperate tehncial output about "dead memory" areas. The "dead 
memory" would stand for all the occupied memory bu variables, constants and 
other data structures, that are not:

 - freed ( label "F" )
 - used anywhere in the code ( label "U" )
 - initialized ( labeled "I" )

What version of the product are you using? On what operating system?

RC1

Please provide any additional information below.

To add this feature, the following TODO could be used:

1. On each statement ( <if..then..[begin..end]> ; <for..to..do..[begin..end]> ; 
<repeat..unti> ; and others... ) record used variables into data structure;
2. After code is scanned / covered, perform static code scan and compare if the 
variables used ihn these statements mentioned above exposes the same variables 
declared in the unit / project. If not, provide new column in output labeled 
"Dead Memory", which would describe the main issue that memory is not anymore 
fully accessible for the program...
3. scan the code and combine the found issues in the form of array, that would 
make a columns fiel look like "F,U,I", saying, that the scanned code / 
statement block has got unfreed memory, uninitialized variables and also 
variables are unused ( declared but no value assigned ).

Original issue reported on code.google.com by [email protected] on 8 Apr 2012 at 3:03

suggestion: add switch for executable arguments

it would be helpful to support a new switch "-a" which can be used to pass 
arguments to the executable

Example:

CodeCoverage -m TestApp.map -e TestApp.exe -a /arg1 /arg2=paramvalue -u 
TestUnit TestUnit2

Original issue reported on code.google.com by [email protected] on 25 Jun 2010 at 1:17

'<' corrupts HTML output

If the Delphi source contains an '<' character, this character won't be 
filtered to &lt; in the HTML output, which will corrupt the output.

Original issue reported on code.google.com by [email protected] on 21 Jan 2011 at 11:07

Matrix of Image

how to display a binary image matrix in a stringrid on delphi

Original issue reported on code.google.com by [email protected] on 26 Nov 2012 at 3:42

covered / non covered colors are too close

Covered / non covered lines colors, on the htlm detail, are 'light green' and 
'light blue'. They are, in some PC, too close to quickly identifie the non 
covered lines.
I would suggest the red based color for non covered lines.


Original issue reported on code.google.com by [email protected] on 31 Oct 2011 at 1:27

Add switch for reading configuration from delphi project file

Attached patch adds two switches
 -dproj delphi-project-file
reads Exename and list of units from Delphi project file

-esm excludemask1 excludemask2 ...
allows to specify masks for source files that should be excluded from coverage

This will allow to run coverage on CodeCoverageTests.exe for example as 
following:
build\CodeCoverage.exe -dproj CodeCoverage\Test\CodeCoverageTests.dproj -esm 
*CodeCoverage\Test\* -od reports\coverage -lt

Original issue reported on code.google.com by [email protected] on 8 Mar 2012 at 8:10

Attachments:

Show better error message when debug information is not enabled for project

What steps will reproduce the problem?
1.Enable detailed map file and disable debug information in project options
2.Run codecoverage on it


What is the expected output? What do you see instead?
Should show error message that debug information is missing in map file, 
instead it 
crashes with arithmetic error.

Attached patch fixes it

Original issue reported on code.google.com by [email protected] on 9 Mar 2012 at 4:59

Attachments:

Memory leak in TCoverage

The TUnitCoverage objects in the private unitlist variable is not freed, nor is 
unitlist.

Fix:

destructor TCoverage.Destroy;
var
  lp : Integer;
begin
  for lp := 0 to Pred(unitlist.Count) do
    unitlist[lp].Free;

  unitlist.Free;
  inherited;
end;

Original issue reported on code.google.com by [email protected] on 31 Jul 2010 at 5:30

Errors when creating code coverage for runtime packages

What steps will reproduce the problem?

1. Create a package containing source code (Source.bpl)
2. Create a test executable testing the source code, accessing the source code 
as runtime package (Test.exe)
3. Run CodeCoverage.exe: CodeCoverage.exe -e Test.exe -m Source.map -html

Some parameters missing in 3, but you should get the point.

What is the expected output? What do you see instead?
I would expect to see a code coverage report for the units within Source.bpl. 
Instead, I occur different errors (depending on the package I wanted to create 
a report for):

1) An error message when loading kernel32.dll
2) CodeCoverage.exe doesn't stop loading, logfile is growing and growing (I 
killed execution around ~7 GB).

I attached the logfiles of both errors.

What version of the product are you using? On what operating system?
1.0 RC8, Windows 7 Professional 64bit, Delphi XE2

Original issue reported on code.google.com by [email protected] on 28 Sep 2012 at 6:28

Attachments:

Skip logfile creation when -lt parameter is missing

What steps will reproduce the problem?

1. Build an existing executable with map file
2. Run the executable without the parameter for logfile creation (-lt)

What is the expected output? What do you see instead?

A "Delphi-Code-Coverage-Debug.log" has been created in the output directory (as 
described by the help). In my opinion it would be reasonable to skip logfile if 
parameter -lt is missing. That is:

1) -lt is missing => no logfile
2) -lt was set without filename => default logfile
3) -lt was set with filename => use filename for log

What version of the product are you using? On what operating system?

1.0 RC8, Windows 7 Professional 64bit

Original issue reported on code.google.com by [email protected] on 28 Sep 2012 at 5:53

Does not work work with units usnig namespaces

if the unit contains dots in it's name, like "Generics.Collections" the unit 
seems to be ignored. It's the same if the unit is specified with -u or -u flags

What steps will reproduce the problem?
1. Create a blank project with a form and a button, on click, ad a showmessage
2. save the unit with "test.unit1.pas" name
3. run codecoverage.exe

What is the expected output? What do you see instead?
the report should specified some data for test.unit1.pas but it's blank

What version of the product are you using? On what operating system?
CodeCoverage_1.0_RC1.

Please provide any additional information below.
  I did not investigated further but during my tests the only time I specified -xml output it complains about a floating point error

Original issue reported on code.google.com by [email protected] on 6 Apr 2012 at 7:51

Load excluded file masks from external file

Feature Request: would like to see a possibility to load the excluded files 
(parameter -esm) from a file, as it is possible for units (-uf) and source 
directories (-spf)

By the way: -esm is not listed on project home.

Original issue reported on code.google.com by [email protected] on 28 Sep 2012 at 6:34

Error 404 when trying to show the coverage of an unit

What steps will reproduce the problem?

1. Created a project (myproject.dpr) in c:\my_project folder
2. Created a project test (my_project_test.dpr) in c:\my_project folder
3. The sources units are in c:\my_project\source folder
4. The sources (for the tests) are in c:\my_project\test folder
5. The source code for the my_project_test.dpr is similar to:

program MyProjectTest;
uses
   unit1 in 'source\unit1.pas',
   unit2 in 'source\unit2.pas',
   etc.... 

6. Execute the CodeCoverage and the report will be generated in Hudson/Jenkins 
(Continuos Integration). The command used to generate the report is similar to:

CodeCoverage -m my_project_test.map -e my_project_test.exe -od report\coverage 
-uf units-to-coverage.txt

The contents for the "units-to-coverage.txt" are similar to:

unit1
unit2
unit3
etc...


What is the expected output? What do you see instead?

The link (in coverage report - Jenkins) for the unit1 is displayed as 
"source\unit1" and when I click in it occurs an error: 404. This error does not 
occur when the files (uni1.pas, unit2.pas, etc) are in the same directory as 
the my_projet_test.dpr


What version of the product are you using? On what operating system?

- Delphi 7
- Windows Vista
- CodeCoverage 0.5

Thank you

Clayton

Original issue reported on code.google.com by [email protected] on 9 Jan 2012 at 11:34

Memory leak in TDebugProcess

The TDebugThread objects in the private mThreadList (:TList) are not freed, nor 
is mThreadList.

Fix:

destructor TDebugProcess.Destroy;
var
  lp : Integer;
begin
  for lp := 0 to Pred(mThreadList.Count) do
    TDebugThread(mThreadList[lp]).Free;

  mThreadList.Free;
  inherited;
end;

Original issue reported on code.google.com by [email protected] on 31 Jul 2010 at 5:25

Allow generate emma unmerged reports

Hi

Can you add a switch to generate unmerged emma meta data (.em) and coverage 
data (.ec) files? It's necessary to have report in seperate files if want to 
use Emma plugin to Sonar:
http://docs.codehaus.org/display/SONAR/Sonar+Emma+Plugin
session data (.es) files are not supported

I couldn't find feature allowing for unmerge .es to .ec and .em in Emma.
I'm not sure, but I think, that all you need to do is change several lines in 
EmmaCoverageFileUnit.pas, where emma file is created.
I tried to do it this way and I think it works well. But i will be glad if i 
will be able to use newer versions of Delphi Code Coverage without modification 
every time.

I'm impressed with your work. I think if it will be possible to generate 
Sonar-compatible reports, it will bring you many new users.
Bartholomew

Original issue reported on code.google.com by [email protected] on 8 Aug 2012 at 1:32

Support Error highligh based on CallStack for madExcept v3.x

What steps will reproduce the problem?
1. Install tool
2. Configure tool
3. Run coverage

What is the expected output? What do you see instead?

The callstack log created by madexcept would be parsed and highlighted into 
Coverage.

Please use labels and text to provide additional information.

There is several approaches:
  * Use created bugreport.txt
  * Use madExcept source and get more detailed log, but make it more depended on the stability of madExcept. Upgrade madExcept may cause some troubles for tool, if no version check will be implemented.

Original issue reported on code.google.com by [email protected] on 25 Apr 2012 at 8:57

Memory leak in TDebugger

The following private variables are not freed:
  ms: TJCLMapScanner;
  Configuration: TCoverageConfiguration;
  bplist: TBreakpointList;
  process: TDebugProcess;

Also the TCommandLineProvider object created in the TDebugger.Create is not 
freed.

Fix:

destructor TDebugger.Destroy;
begin
  ms.Free;
  Configuration.Free;
  Coverage.Free;
  bplist.Free;
  process.Free;
  inherited;
end;

Original issue reported on code.google.com by [email protected] on 31 Jul 2010 at 5:28

Allow specifying lines with no expected coverage

There can be lines in the code who will never be covered, because of spurious 
compiler code generation or other special code situations.

One possible solution would be to detect special comments on a line, and when 
encountered, not report the line as not covered.

For instance in:

   procedure MyProc;
   begin
      ThisProcedureAlwaysTriggersAnException;
   end; {expected coverage issue}

the compiler will generate code for the 'end;', which can never be reached.
Other than spurious codegens, such cases can happen in other optimization 
scenarios where the compiler doesn't keep up.

Original issue reported on code.google.com by [email protected] on 22 Oct 2010 at 1:28

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.