Commit d13c6b70 by Evgeny Gavrin Committed by Cary Coutant

dwarf2out.c (should_emit_struct_debug): Add check for type_decl variable is not NULL.

2013-09-13  Evgeny Gavrin <e.gavrin@samsung.com>

gcc/
        * dwarf2out.c (should_emit_struct_debug): Add check
        for type_decl variable is not NULL.

gcc/testsuite
        * gcc.dg/debug/dwarf2/omp-fesdr.c: Add test.
        * g++.dg/debug/dwarf2/omp-fesdr.C: Add test.

From-SVN: r202582
parent 6e5e985e
2013-09-13 Evgeny Gavrin <e.gavrin@samsung.com>
* dwarf2out.c (should_emit_struct_debug): Add check
for type_decl variable is not NULL.
2013-09-13 Jacek Caban <jacek@codeweavers.com>
* config.gcc: Use new winnt-c.c target hooks
......
......@@ -365,11 +365,15 @@ should_emit_struct_debug (tree type, enum debug_info_usage usage)
type_decl = TYPE_STUB_DECL (TYPE_MAIN_VARIANT (type));
if (criterion == DINFO_STRUCT_FILE_SYS && DECL_IN_SYSTEM_HEADER (type_decl))
return DUMP_GSTRUCT (type, usage, criterion, generic, false, true);
if (type_decl != NULL)
{
if (criterion == DINFO_STRUCT_FILE_SYS && DECL_IN_SYSTEM_HEADER (type_decl))
return DUMP_GSTRUCT (type, usage, criterion, generic, false, true);
if (matches_main_base (DECL_SOURCE_FILE (type_decl)))
return DUMP_GSTRUCT (type, usage, criterion, generic, true, true);
}
if (matches_main_base (DECL_SOURCE_FILE (type_decl)))
return DUMP_GSTRUCT (type, usage, criterion, generic, true, true);
return DUMP_GSTRUCT (type, usage, criterion, generic, false, false);
}
......
2013-09-13 Evgeny Gavrin <e.gavrin@samsung.com>
* gcc.dg/debug/dwarf2/omp-fesdr.c: Add test.
* g++.dg/debug/dwarf2/omp-fesdr.C: Add test.
2013-09-13 Jacek Caban <jacek@codeweavers.com>
* g++.dg/abi/main.C: Added implicit C linkage tests
......
/* { dg-do compile } */
/* { dg-options "-g -fopenmp -gdwarf-2 -femit-struct-debug-reduced" } */
struct aa
{
int a;
};
int
f7 (void)
{
int v7i = 6, v7j = 7, v7k = 9, v7l = 0, v7n = 0, v7o = 1;
#pragma omp parallel
{
#pragma omp master
v7o++;
#pragma omp for private (v7i) firstprivate (v7k) reduction (+:v7l)
for (v7n = 0; v7n < 3; v7n++)
{
int v7m = v7j + v7k;
v7i = 8;
v7l++;
}
}
return v7i + v7j + v7k + v7l + v7n;
}
int
main (void)
{
f7 ();
return 0;
}
/* { dg-do compile } */
/* { dg-options "-g -fopenmp -gdwarf-2 -femit-struct-debug-reduced" } */
struct aa
{
int a;
};
int
f7 (void)
{
int v7i = 6, v7j = 7, v7k = 9, v7l = 0, v7n = 0, v7o = 1;
#pragma omp parallel
{
#pragma omp master
v7o++;
#pragma omp for private (v7i) firstprivate (v7k) reduction (+:v7l)
for (v7n = 0; v7n < 3; v7n++)
{
int v7m = v7j + v7k;
v7i = 8;
v7l++;
}
}
return v7i + v7j + v7k + v7l + v7n;
}
int
main (void)
{
f7 ();
return 0;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment