OSDN Git Service

* c-tree.h (enum c_typespec_keyword): New.
authorjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 17 Sep 2004 18:18:05 +0000 (18:18 +0000)
committerjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 17 Sep 2004 18:18:05 +0000 (18:18 +0000)
commit70dd11f7e9e827334144431853540ccf261151e6
tree065e742552e8a8e99595de375f55074a900b5eb3
parent515c3cb4a80c18d12788f1e6a8a287d049f6b0fe
* c-tree.h (enum c_typespec_keyword): New.
(struct c_declspecs): Adjust description of "type".  Remove
specbits, explicit_int_p and explicit_char_p.  Rename
typedef_signed_p to explicit_signed_p.  Add default_int_p, long_p,
short_p, signed_p, unsigned_p and complex_p.
(finish_declspecs): New.
* c-parse.in (datadef, datadecl, setspecs, decl, component_decl,
typename): Call finish_declspecs.
* c-decl.c (finish_declspecs): New.
(declspecs_add_type): Check for combinations which cannot occur in
valid specifier lists.  Update comments.
(shadow_tag_warned): Remove checks done in finish_declspecs.
Don't report useless type name if type defaulted to int.
(grokdeclarator): Remove checks and actions done in
finish_declspecs.  Don't allow for type being NULL.  Update for
datastructures changes.  Initialize decl_attr.
(build_null_declspecs, quals_from_declspecs): Update for
datastructures changes.

testsuite:
* gcc.dg/declspec-4.c, gcc.dg/declspec-5.c, gcc.dg/declspec-6.c:
Update expected messages.
* gcc.dg/declspec-13.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87660 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/c-decl.c
gcc/c-parse.in
gcc/c-tree.h
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/declspec-13.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/declspec-4.c
gcc/testsuite/gcc.dg/declspec-5.c
gcc/testsuite/gcc.dg/declspec-6.c