This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: Regression going from egcs-1.03 to egcs-19980803
- To: law at cygnus dot com
- Subject: Re: Regression going from egcs-1.03 to egcs-19980803
- From: Roberto Bagnara <bagnara at di dot unipi dot it>
- Date: Tue, 18 Aug 1998 13:38:14 +0200
- CC: egcsbugs <egcs-bugs at cygnus dot com>
- References: <5086.903227840@hurl.cygnus.com>
Jeffrey A Law wrote:
> The code to detect potentially uninitialized variables is not very
> good -- it reports many false positives.
>
> -O2 optimization enables global cse, which happens to rearrange code
> in a manner which triggers the false positive warnings.
>
> This is not something we're likely to fix for egcs-1.1. It would be
> nice if someone could improve the uninitialized warning detection code
> for a future release though.
Jeffrey,
thank you very much for the quick reply.
Please, let me ask one question.
I have reported twice that -fprofile-arcs -ftest-coverage
has stopped working since the release of egcs-1.03
(in other words, there has been a regression from
egcs-1.02 to egcs-1.03).
I have submitted two bug reports concerning this but
got no replies whatsoever. And the situation is getting
worse as new snapshots appear.(1)
The question is: is -fprofile-arcs -ftest-coverage
begin phased out (thus removing the relevant sections
in the documentation)?
And the real question is: should I keep posting bug reports
concerning these options or should I forget about it?
Isn't this something that ought to work (again) for
egcs-1.1?
Unfortunately, I cannot revert to egcs-1.02 :(
Thanks again
Roberto
(1) Reminder from my last bug report: try to compile
the following one-liner
#include <vector>
with
g++ -fprofile-arcs
on a ix86-pc-linux-gnu. You will get a symbol
T global constructors keyed to int lexicographical_compare_3way<signed
char const *,
signed char const *>(signed char const *, signed char const *, signed
char const *,
signed char const *)(volatile const)
(note the T) in the resulting object file.
You won't get this symbol if you omit the -fprofile-arcs option.
As a result, if you have more than one module including
<vector>, you won't be able to link your application.
P.S. I believe that coverage testing is crucial to any serious
development work.
--
Roberto Bagnara
Department of Mathematics, University of Parma, Italy
http://www.di.unipi.it/~bagnara/bagnara.html
mailto:bagnara@di.unipi.it