-fgo-dump-spec: support _BitInt
gcc/ PR go/111310 * godump.cc (go_format_type): Handle BITINT_TYPE. gcc/testsuite/ PR go/111310 * gcc.misc-tests/godump-1.c: Add _BitInt test cases.
This commit is contained in:
parent
6de5f5a4fe
commit
e4775af423
2 changed files with 30 additions and 0 deletions
|
@ -760,6 +760,25 @@ go_format_type (class godump_container *container, tree type,
|
|||
}
|
||||
break;
|
||||
|
||||
case BITINT_TYPE:
|
||||
{
|
||||
const char *s;
|
||||
char buf[100];
|
||||
|
||||
s = go_get_uinttype_for_precision (TYPE_PRECISION (type),
|
||||
TYPE_UNSIGNED (type));
|
||||
if (s == NULL)
|
||||
{
|
||||
snprintf (buf, sizeof buf, "INVALID-bitint-%u%s",
|
||||
TYPE_PRECISION (type),
|
||||
TYPE_UNSIGNED (type) ? "u" : "");
|
||||
s = buf;
|
||||
ret = false;
|
||||
}
|
||||
obstack_grow (ob, s, strlen(s));
|
||||
}
|
||||
break;
|
||||
|
||||
case REAL_TYPE:
|
||||
{
|
||||
const char *s;
|
||||
|
|
|
@ -234,6 +234,17 @@ const char cc_v1;
|
|||
cc_t cc_v2;
|
||||
/* { dg-final { scan-file godump-1.out "(?n)^var _cc_v2 _cc_t$" } } */
|
||||
|
||||
_BitInt(32) b32_v;
|
||||
/* { dg-final { scan-file godump-1.out "(?n)^var _b32_v int32$" } } */
|
||||
|
||||
_BitInt(64) b64_v;
|
||||
/* { dg-final { scan-file godump-1.out "(?n)^var _b64_v int64$" } } */
|
||||
|
||||
unsigned _BitInt(32) b32u_v;
|
||||
/* { dg-final { scan-file godump-1.out "(?n)^var _b32u_v uint32$" } } */
|
||||
|
||||
_BitInt(33) b33_v;
|
||||
/* { dg-final { scan-file godump-1.out "(?n)^// var _b33_v INVALID-bitint-33$" } } */
|
||||
|
||||
/*** pointer and array types ***/
|
||||
typedef void *vp_t;
|
||||
|
|
Loading…
Add table
Reference in a new issue