[PPL-devel] [GIT] ppl/ppl(master): Suggest using -fno-elide-constructors when configuring for coverage.

Enea Zaffanella zaffanella at cs.unipr.it
Thu Sep 10 15:26:38 CEST 2009


Module: ppl/ppl
Branch: master
Commit: 6a1b3b278146ed990e74b338c1608471d3314be8
URL:    http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=6a1b3b278146ed990e74b338c1608471d3314be8

Author: Enea Zaffanella <zaffanella at cs.unipr.it>
Date:   Thu Sep 10 15:24:16 2009 +0200

Suggest using -fno-elide-constructors when configuring for coverage.

---

 STANDARDS |   17 +++++++++++------
 1 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/STANDARDS b/STANDARDS
index 43654aa..e0096c7 100644
--- a/STANDARDS
+++ b/STANDARDS
@@ -566,12 +566,17 @@ o  Ideally the tests should exercise every line of code in the library.
    Here we summarize the steps needed to produce coverage information
    using `lcov' (see below for a few hints on the direct use of `gcov').
    The build tree under test must be configured with the
-   `--enable-coverage' and `--disable-optimization options' (and possibly
-   also with --enable-profiling).  For example:
-
-     $ configure --enable-coverage --disable-optimization \
-                 --enable-profiling \
-                 --enable-assertions --enable-more-assertions
+   `--enable-coverage' and `--disable-optimization' options (and possibly
+   also with --enable-profiling). Furthermore, according to this thread
+       http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12076
+   GCC performs NRV (Named Return Value) transformations even when
+   optimizations are turned off; hence, to avoid spurious zero counts
+   in return statements, the compilation flag `-fno-elide-constructors'
+   is recommended. For example:
+
+     $ configure --enable-coverage --enable-profiling \
+         --disable-optimization --with-cxxflags='-fno-elide-constructors' \
+         --enable-assertions --enable-more-assertions
 
    Running the tests (with `make check') produces many .gcno and .gcda
    files in src/.libs and in the test directories.  These are data




More information about the PPL-devel mailing list