PR debug/86459 - Fix -gsplit-dwarf -g3 gcc_assert

There was a typo in the output_macinfo_op gcc_assert.
The function is called dwarf_FORM, not dwarf_form.
Add the provided testcase from the bug to test -gsplit-dwarf -g3.

gcc/ChangeLog:

	PR debug/86459
	* dwarf2out.c (output_macinfo_op): Fix dwarf_FORM typo in gcc_assert.

gcc/testsuite/ChangeLog:

	PR debug/86459
	* gcc.dg/pr86459.c: New test.

From-SVN: r262545
This commit is contained in:
Mark Wielaard 2018-07-10 22:44:30 +00:00 committed by Mark Wielaard
parent a25bbd5413
commit 6cdd696f3e
4 changed files with 30 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2018-07-10 Mark Wielaard <mark@klomp.org>
PR debug/86459
* dwarf2out.c (output_macinfo_op): Fix dwarf_FORM typo in gcc_assert.
2018-07-10 Richard Biener <rguenther@suse.de>
* hash-map.h (hash_map::iterator::operator*): Return

View File

@ -28066,7 +28066,7 @@ output_macinfo_op (macinfo_entry *ref)
node = find_AT_string (ref->info);
gcc_assert (node
&& (node->form == DW_FORM_strp
|| node->form == dwarf_form (DW_FORM_strx)));
|| node->form == dwarf_FORM (DW_FORM_strx)));
dw2_asm_output_data (1, ref->code,
ref->code == DW_MACRO_define_strp
? "Define macro strp"

View File

@ -1,3 +1,8 @@
2018-07-10 Mark Wielaard <mark@klomp.org>
PR debug/86459
* gcc.dg/pr86459.c: New test.
2018-07-10 Martin Sebor <msebor@redhat.com>
PR testsuite/86461

View File

@ -0,0 +1,19 @@
/* { dg-do compile } */
/* { dg-options "-g -O2 -fno-var-tracking-assignments -gsplit-dwarf -g3" } */
/* Same as pr86064.c but compiled with -g3 it showed an issue in
output_macinfo_op because of a typo in an assert. */
int a;
__attribute__((__cold__)) void b();
void e(int *);
int f();
void c() {
int d;
e(&d);
a = d;
if (f())
b();
}