This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/56231] warning traces have bogus line information when using LTO
- From: "rguenther at suse dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 12 Feb 2013 11:11:11 +0000
- Subject: [Bug middle-end/56231] warning traces have bogus line information when using LTO
- Auto-submitted: auto-generated
- References: <bug-56231-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56231
--- Comment #13 from rguenther at suse dot de <rguenther at suse dot de> 2013-02-12 11:11:11 UTC ---
On Tue, 12 Feb 2013, matt at use dot net wrote:
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56231
>
> --- Comment #12 from Matt Hargett <matt at use dot net> 2013-02-12 02:02:33 UTC ---
> looking at the patch for merging elsewhere, I noticed that
>
> location_t
> lto_input_location (struct bitpack_d *bp, struct data_in *data_in)
> {
> + static const char *current_file;
> + static int current_line;
> + static int current_col;
> bool file_change, line_change, column_change;
> unsigned len;
> - bool prev_file = data_in->current_file != NULL;
> + bool prev_file = current_file != NULL;
>
>
> current_file is potentially of unknown value on the comparison in the last
> line, right? or is there some static const initialization rule that implicitly
> initializes it to 0?
Yes, all statics are zero-initialized.
As for the testcase, the LTO testsuite harness does not support
dg-warning and friends so it's not possible to add a meaningful
testcase.