2
0
mirror of git://gcc.gnu.org/git/gcc.git synced 2025-04-15 13:41:13 +08:00

re PR debug/7241 (DWARF encoding for "char" incorrect in gcc)

PR debug/7241
	* dwarf2out.c (base_type_die): Compare char_type_node with
	TYPE_MAIN_VARIANT (type), not type.

	* gcc.dg/debug/dwarf2/dwarf-char1.c: New test.
	* gcc.dg/debug/dwarf2/dwarf-char2.c: New test.
	* gcc.dg/debug/dwarf2/dwarf-char3.c: New test.

	* gcc.dg/debug/dwarf2/dwarf-die1.c: Fix a typo.
	* gcc.dg/debug/dwarf2/dwarf-die2.c: Likewise.
	* gcc.dg/debug/dwarf2/dwarf-die3.c: Likewise.
	* gcc.dg/debug/dwarf2/dwarf-die5.c: Likewise.
	* gcc.dg/debug/dwarf2/dwarf-die6.c: Likewise.
	* gcc.dg/debug/dwarf2/dwarf-die7.c: Likewise.
	* gcc.dg/debug/dwarf2/dwarf-uninit.c: Likewise.
	* gcc.dg/debug/dwarf2/dwarf2-macro.c: Likewise.

From-SVN: r103727
This commit is contained in:
Jakub Jelinek 2005-09-01 15:53:45 +02:00 committed by Jakub Jelinek
parent 355866de65
commit ac156e9176
14 changed files with 62 additions and 9 deletions

@ -1,3 +1,9 @@
2005-09-01 Jakub Jelinek <jakub@redhat.com>
PR debug/7241
* dwarf2out.c (base_type_die): Compare char_type_node with
TYPE_MAIN_VARIANT (type), not type.
2005-09-01 Richard Guenther <rguenther@suse.de>
PR tree-optimization/15366

@ -8014,7 +8014,7 @@ base_type_die (tree type)
that contain spaces; other names might occur by coincidence in other
languages. */
if (! (TYPE_PRECISION (type) == CHAR_TYPE_SIZE
&& (type == char_type_node
&& (TYPE_MAIN_VARIANT (type) == char_type_node
|| ! strcmp (type_name, "signed char")
|| ! strcmp (type_name, "unsigned char"))))
{

@ -1,3 +1,19 @@
2005-09-01 Jakub Jelinek <jakub@redhat.com>
PR debug/7241
* gcc.dg/debug/dwarf2/dwarf-char1.c: New test.
* gcc.dg/debug/dwarf2/dwarf-char2.c: New test.
* gcc.dg/debug/dwarf2/dwarf-char3.c: New test.
* gcc.dg/debug/dwarf2/dwarf-die1.c: Fix a typo.
* gcc.dg/debug/dwarf2/dwarf-die2.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf-die3.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf-die5.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf-die6.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf-die7.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf-uninit.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf2-macro.c: Likewise.
2005-08-31 Andrew Pinski <pinskia@physics.uc.edu>
PR objc/23306

@ -0,0 +1,12 @@
/* PR debug/7241 */
/* { dg-do compile } */
/* { dg-options "-O2 -gdwarf-2 -dA" } */
/* { dg-final { scan-assembler "0x\[68\]\[ \t\]# DW_AT_encoding" } } */
/* { dg-final { scan-assembler-not "0x\[57\]\[ \t\]# DW_AT_encoding" } } */
char a;
const char b;
signed char c;
volatile signed char d;
unsigned char e;
volatile const unsigned char f;

@ -0,0 +1,12 @@
/* PR debug/7241 */
/* { dg-do compile } */
/* { dg-options "-O2 -gdwarf-2 -dA" } */
/* { dg-final { scan-assembler "0x\[68\]\[ \t\]# DW_AT_encoding" } } */
/* { dg-final { scan-assembler-not "0x\[57\]\[ \t\]# DW_AT_encoding" } } */
const char a;
char b;
volatile signed char c;
signed char d;
const volatile unsigned char e;
unsigned char f;

@ -0,0 +1,7 @@
/* PR debug/7241 */
/* { dg-do compile } */
/* { dg-options "-O2 -gdwarf-2 -dA" } */
/* { dg-final { scan-assembler "0x\[68\]\[ \t\]# DW_AT_encoding" } } */
/* { dg-final { scan-assembler-not "0x\[57\]\[ \t\]# DW_AT_encoding" } } */
const char *p = "abc";

@ -1,5 +1,5 @@
/* Verify that inline function never actually inlined has no abstract DIE. */
/* { dg-do compile */
/* { dg-do compile } */
/* { dg-options "-O2 -gdwarf-2 -dA" } */
/* { dg-final { scan-assembler-not "DW_AT_inline" } } */
inline int t()

@ -1,5 +1,5 @@
/* Verify that inline function never actually emit has no DIE. */
/* { dg-do compile */
/* { dg-do compile } */
/* { dg-options "-O0 -gdwarf-2 -dA" } */
/* { dg-final { scan-assembler-not "CIE Version" } } */
static inline int t()

@ -1,5 +1,5 @@
/* Verify that extern inline function never actually inlined has no abstract DIE. */
/* { dg-do compile */
/* { dg-do compile } */
/* { dg-options "-O0 -gdwarf-2 -dA" } */
/* { dg-final { scan-assembler-not "DW_AT_inline" } } */
extern inline int t()

@ -1,5 +1,5 @@
/* Inlined inline function must have abstract DIE */
/* { dg-do compile */
/* { dg-do compile } */
/* { dg-options "-O2 -gdwarf-2 -dA -fpreprocessed" } */
/* { dg-final { scan-assembler "3.*DW_AT_inline" } } */
#1 "test.h"

@ -1,5 +1,5 @@
/* not inline inline function must not have abstract DIE */
/* { dg-do compile */
/* { dg-do compile } */
/* { dg-options "-O2 -fno-inline -gdwarf-2 -dA -fpreprocessed" } */
/* { dg-final { scan-assembler-not "DW_AT_inline" } } */
#1 "test.h"

@ -1,5 +1,5 @@
/* Inlined non-inline function must have abstract DIE */
/* { dg-do compile */
/* { dg-do compile } */
/* { dg-options "-O2 -gdwarf-2 -dA -fpreprocessed" } */
/* { dg-final { scan-assembler "1.*DW_AT_inline" } } */
#1 "test.h"

@ -1,4 +1,4 @@
/* { dg-do compile */
/* { dg-do compile } */
/* { dg-options "-O2 -gdwarf-2 -dA" } */
/* { dg-final { scan-assembler "DW_TAG_variable" } } */
/* PR debug/21828 */

@ -1,5 +1,5 @@
/* Test to make sure the mcaro info includes a start file command for the main source */
/* { dg-do compile */
/* { dg-do compile } */
/* { dg-options "-g3 -gdwarf-2 -dA -fverbose-asm" } */
/* { dg-final { scan-assembler "Start new file" } } */