Commit Graph

165 Commits

Author SHA1 Message Date
Kaveh Ghazi
3d091dac56 builtin-attrs.def (ATTR_SENTINEL, [...]): New.
gcc:
	* builtin-attrs.def (ATTR_SENTINEL, ATTR_SENTINEL_NOTHROW_LIST):
	New.
	* builtins.def (BUILT_IN_EXECL, BUILT_IN_EXECLP): Add `sentinel'
	attribute.
	* c-common.c (handle_sentinel_attribute, check_function_sentinel):
	New functions.
	(c_common_attribute_table): Add `sentinel' attribute.
	(check_function_arguments): Handle `sentinel' attribute.
	* doc/extend.texi: Document `sentinel' attribute.

gcc/testsuite:
	* gcc.dg/format/sentinel-1.c: New test.

include:
	* ansidecl.h (ATTRIBUTE_SENTINEL): Define.
	* libiberty.h (concat, reconcat, concat_length, concat_copy,
	concat_copy2): Use ATTRIBUTE_SENTINEL.

From-SVN: r87096
2004-09-05 02:50:09 +00:00
Ian Lance Taylor
2502b0bcf5 Split ChangeLog
From-SVN: r86172
2004-08-18 13:11:56 +09:30
Gabriel Dos Reis
b1e8c0fdac libiberty.h (XDELETE, [...]): Remove any const-qualification before disposal.
include/
        * libiberty.h (XDELETE, XDELETEVEC, XRESIZEVEC): Remove any
        const-qualification before disposal.

gcc/
        * vec.h (DEF_VEC_P): Add proper cast to uses of vec_o_reserve and
        vec_p_reserve.
        * langhooks.h (lang_hooks::builtin_function): Rename parameter
        from "class" to "bt_class".

From-SVN: r85441
2004-08-02 16:45:52 +00:00
Bernardo Innocenti
5673cd61ce * ansidecl.h (ARG_UNUSED): New Macro.
From-SVN: r85120
2004-07-24 19:49:27 +02:00
Paolo Bonzini
4b997cc8bb ansidecl.h (ATTRIBUTE_PURE): New.
2004-07-21  Paolo Bonzini  <bonzini@gnu.org>

        * ansidecl.h (ATTRIBUTE_PURE): New.

From-SVN: r85001
2004-07-21 08:25:57 +00:00
Bernardo Innocenti
b6fa4f6e16 libiberty.h (XNEW, [...]): Move here from libcpp/internal.h.
* libiberty.h (XNEW, XCNEW, XNEWVEC, XCNEWVEC, XOBNEW): Move here from
	libcpp/internal.h.
	(XDELETE, XRESIZEVEC, XDELETEVEC, XNEWVAR, XCNEWVAR, XRESIZEVAR): New
	macros.

From-SVN: r84643
2004-07-13 22:59:09 +02:00
Bernardo Innocenti
5557e16d2a libiberty.h (ASTRDUP): Add casts required for stricter type conversion rules of C++.
* libiberty.h (ASTRDUP): Add casts required for stricter
	type conversion rules of C++.
	* obstack.h (obstack_free): Likewise.

From-SVN: r84642
2004-07-13 22:54:38 +02:00
Diego Novillo
6de9cd9a88 Merge tree-ssa-20020619-branch into mainline.
From-SVN: r81764
2004-05-13 02:41:07 -04:00
Andreas Jaeger
073273c359 demangle.h: Do not use C++ reserved keyword typename as parameter for...
* demangle.h: Do not use C++ reserved keyword typename as
	parameter for cplus_demangle_fill_builtin_type.

From-SVN: r81481
2004-05-04 20:13:54 +02:00
Richard Henderson
228c46dbd8 * hashtab.h (struct htab): Add size_prime_index.
From-SVN: r81030
2004-04-22 10:36:03 -07:00
Jeff Law
7f96816adb hashtab.c (htab_remove_elt_with_hash): New function.
* hashtab.c (htab_remove_elt_with_hash): New function.
	(htab_remove_elt): Implement in terms of htab_remove_elt_with_hash.

	* hashtab.h (htab_remove_elt_with_hash): Prototype new function.

From-SVN: r80641
2004-04-13 08:48:56 -06:00
Zack Weinberg
cfdfa11075 * hashtab.h, splay-tree.h: Use new shorter form of GTY markers.
From-SVN: r80092
2004-03-30 19:23:16 +00:00
Ian Lance Taylor
0d7fbf1468 * dyn-string.h: Update copyright date.
From-SVN: r78415
2004-02-25 01:42:20 +00:00
Ian Lance Taylor
795b4c374c dyn-string.h: Remove test of IN_LIBGCC2 and IN_GLIBCPP_V3 and the associated #defines.
* dyn-string.h: Remove test of IN_LIBGCC2 and IN_GLIBCPP_V3 and
	the associated #defines.

From-SVN: r78346
2004-02-24 02:32:30 +00:00
Ian Lance Taylor
d051dc88ef demangle.h: Instead of checking ANSI_PROTOTYPES, just include "libiberty.h".
2004-01-12  Ian Lance Taylor  <ian@wasabisystems.com>

	* demangle.h: Instead of checking ANSI_PROTOTYPES, just include
	"libiberty.h".

From-SVN: r75789
2004-01-13 03:06:13 +00:00
Ian Lance Taylor
e4a32afbe1 * demangle.h: If ANSI_PROTOTYPES is defined, include <stddef.h>.
From-SVN: r75783
2004-01-13 01:49:16 +00:00
Ian Lance Taylor
5e777af517 demangle.h (enum demangle_component_type): Define.
* demangle.h (enum demangle_component_type): Define.
	(struct demangle_operator_info): Declare.
	(struct demangle_builtin_type_info): Declare.
	(struct demangle_component): Define.
	(cplus_demangle_fill_component): Declare.
	(cplus_demangle_fill_name): Declare.
	(cplus_demangle_fill_builtin_type): Declare.
	(cplus_demangle_fill_operator): Declare.
	(cplus_demangle_fill_extended_operator): Declare.
	(cplus_demangle_fill_ctor, cplus_demangle_fill_dtor): Declare.
	(cplus_demangle_v3_components): Declare.
	(cplus_demangle_print): Declare.

	* cp-demangle.c: Include "cp-demangle.h".  If IN_GLIBCPP_V3 is
	defined, rename some functions which are to become static via
	#define.
	(CP_STATIC_IF_GLIBCPP_V3): Define.
	(struct d_operator_info): Move definition to cp-demangle.h, and
	rename to demangle_operator_info.  Change all uses.
	(enum d_builtin_type_print): Move definition to cp-demangle.h.
	(struct d_builtin_type_info): Move definition to cp-demangle.h,
	and rename to demangle_builtin_type_info.  Change all uses.
	(enum d_comp_type): Move definition to include/demangle.h, and
	rename to demangle_component_type, and change all enums to start
	with DEMANGLE_COMPONENT_ instead of D_.  Change all uses.
	(struct d_comp): Move definition to include/demangle.h, and rename
	to demangle_component.  Change all uses.
	(struct d_info): Move definition to cp-demangle.h.
	(cplus_demangle_fill_name): New function.
	(cplus_demangle_fill_extended_operator): New function.
	(cplus_demangle_fill_ctor): New function.
	(cplus_demangle_fill_dtor): New function.
	(d_make_empty): Remove type parameter.  Change all callers.
	(d_make_name): Use cplus_demangle_fill_name.
	(d_make_extended_operator): Use
	cplus_demangle_fill_extended_operator.
	(d_make_ctor): Use cplus_demangle_fill_ctor.
	(d_make_dtor): Use cplus_demangle_fill_dtor.
	(cplus_demangle_mangled_name): Rename from d_mangled_name.  Make
	non-static by default.  Change all callers.
	(cplus_demangle_operators): Rename from d_operators.  Change all
	uses.  Make non-static by default.  Add sentinel at end of array.
	(d_operator_name): Adjust initialization of high for new sentinel
	in cplus_demangle_operators.
	(cplus_demangle_builtin_types): Rename from d_builtin_types.
	Change all uses.  Make non-static by default.  Change initializer
	to use D_BUILTIN_TYPE_COUNT instead of magic number 26.
	(cplus_demangle_type): Rename from d_type.  Make non-static by
	default.  Change all callers.
	(cplus_demangle_init_info): Rename from d_init_info.  Make
	non-static by default.  Change all callers.
	* cp-demangle.h: New file.
	* cp-demint.c: New file.
	* Makefile.in: Rebuild dependencies.
	(CFILES): Add cp-demint.c.
	(REQUIRED_OFILES): Add cp-demint.o.

From-SVN: r75748
2004-01-12 19:46:31 +00:00
Andreas Tobler
7dff81909b fibheap.h (fibnode): Use __extension__ for bit-fields mark and degree if __GNUC__.
* include/fibheap.h (fibnode): Use __extension__ for
	bit-fields mark and degree if __GNUC__.

From-SVN: r74836
2003-12-19 14:37:36 +00:00
Kazu Hirata
4fe5f18266 fibheap.h (fibnode): Use unsigned long int for bit-fields if __GNUC__ is defined.
* include/fibheap.h (fibnode): Use unsigned long int for
	bit-fields if __GNUC__ is defined.

From-SVN: r74817
2003-12-19 03:17:40 +00:00
Joseph Myers
dc70e81d6e obstack.h: Merge the following change from gnulib...
include:
	* obstack.h: Merge the following change from gnulib:
	2003-10-21  Paul Eggert  <eggert@twinsun.com>
	* obstack.h (obstack_1grow_fast): Properly parenthesize arg.
	(obstack_ptr_grow_fast, obstack_int_grow_fast):
	Don't use lvalue casts, as GCC plans to remove support for them
	in GCC 3.5.  Reported by Joseph S. Myers.  This bug
	was also present in the non-GCC version, indicating that this
	code had always been buggy and had never been widely used.
	(obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
	Use the fast variant of each macro, rather than copying the
	definiens of the fast variant; that way, we'll be more likely to
	catch future bugs in the fast variants.

gcc:
	* c-typeck.c (pedantic_lvalue_warning): Unconditionally warn of
	deprecation of casts as lvalues.
	* fixinc/inclhack.def (obstack_lvalue_cast): New fix.
	* fixinc/fixincl.x: Regenerate.
	* fixinc/tests/base/obstack.h: New test.

gcc/testsuite:
	* gcc.dg/cast-lvalue-1.c: New test.

From-SVN: r72826
2003-10-22 23:28:39 +01:00
Andrew Cagney
83c073429b floatformat.h (struct floatformat): Add field "is_valid".
2003-09-22  Andrew Cagney  <cagney@redhat.com>

	* floatformat.h (struct floatformat): Add field "is_valid".

2003-09-22  Andrew Cagney  <cagney@redhat.com>

	* floatformat.c (floatformat_i387_ext_is_valid): New function.
	(floatformat_always_valid): New function.
	(floatformat_i387_ext): Initialize new "is_valid" field to
	"floatformat_i387_ext_is_valid".
	(floatformat_ieee_single_little): Initialize "is_valid" field to
	floatformat_always_valid.
	(floatformat_ieee_double_big): Ditto.
	(floatformat_ieee_double_little): Ditto.
	(floatformat_ieee_double_little): Ditto.
	(floatformat_ieee_double_littlebyte_bigword): Ditto.
	(floatformat_i960_ext): Ditto.
	(floatformat_m88110_ext): Ditto.
	(floatformat_m88110_harris_ext): Ditto.
	(floatformat_arm_ext_big): Ditto.
	(floatformat_arm_ext_littlebyte_bigword): Ditto.
	(floatformat_ia64_spill_big): Ditto.
	(floatformat_ia64_spill_little): Ditto.
	(floatformat_ia64_quad_big): Ditto.
	(floatformat_ia64_quad_little): Ditto.
	(floatformat_ia64_quad_little): Ditto.
	(floatformat_is_valid): Call "is_valid".

From-SVN: r71659
2003-09-22 17:42:03 +00:00
Andrew Cagney
c9fbef12be Index: include/ChangeLog
2003-09-15  Andrew Cagney  <cagney@redhat.com>

	* floatformat.h (floatformat_to_double): Make input buffer constant.
	(floatformat_from_double, floatformat_is_valid): Ditto.

Index: libiberty/ChangeLog
2003-09-15  Andrew Cagney  <cagney@redhat.com>

	* floatformat.c (get_field): Make "data" constant.
	(floatformat_is_valid, floatformat_to_double): Make "from"
	constant, fix casts.
	(floatformat_from_double): Make "from" constant.

From-SVN: r71422
2003-09-16 01:51:07 +00:00
Andrew Cagney
a4cbdc57c8 floatformat.h (struct floatformat): Make "exp_bias" signed.
2003-09-15  Andrew Cagney  <cagney@redhat.com>

	* floatformat.h (struct floatformat): Make "exp_bias" signed.

From-SVN: r71407
2003-09-15 21:28:49 +00:00
Daniel Jacobowitz
0d66a8212c * floatformat.h (floatformat_is_valid): Add prototype.
From-SVN: r71404
2003-09-15 20:16:22 +00:00
Bob Wilson
b31185fe2f * xtensa-config.h: Undef all macros before defining them.
From-SVN: r69174
2003-07-10 05:08:27 +00:00
H.J. Lu
513dab3208 demangle.h: Support C++.
2003-07-06  H.J. Lu <hongjiu.lu@intel.com>

	* demangle.h: Support C++.

From-SVN: r69016
2003-07-06 14:45:37 -07:00
Zack Weinberg
b6728b1b51 * filenames.h: New file imported from binutils.
From-SVN: r68791
2003-07-01 20:29:16 +00:00
Bob Wilson
e677f70c66 xtensa-config.h: New file imported from binutils.
include/ChangeLog:
	* xtensa-config.h: New file imported from binutils.

gcc/ChangeLog:
	* config/xtensa/lib1funcs.asm: Use "xtensa-config.h" from
	top-level include directory.
	* config/xtensa/lib2funcs.S: Likewise.
	* config/xtensa/xtensa.h: Likewise.
	* config/xtensa/xtensa-config.h: Remove.
	* doc/install.texi: Update location of "xtensa-config.h" header.

From-SVN: r68747
2003-07-01 00:14:33 +00:00
Zack Weinberg
21299dbda4 safe-ctype.h (HC_UNKNOWN, [...]): Rename to HOST_CHARSET_UNKNOWN...
include:
	* safe-ctype.h (HC_UNKNOWN, HC_ASCII, HC_EBCDIC): Rename to
	HOST_CHARSET_UNKNOWN, HOST_CHARSET_ASCII, HOST_CHARSET_EBCDIC
	respectively.
libiberty:
	* safe-ctype.c: Use HOST_CHARSET_ASCII and HOST_CHARSET_EBCDIC,
	not HC_ASCII and HC_EBCDIC.
	Add documentation in form expected by gather-docs.
	* hex.c: Use HOST_CHARSET, not hand-coded check of character set.
	* Makefile.in, functions.texi: Regenerate.
gcc:
	* config/i370/i370.c, config/i370/i370.h: Use HOST_CHARSET_ASCII
	and HOST_CHARSET_EBCDIC, not HC_ASCII and HC_EBCDIC.

From-SVN: r68335
2003-06-22 15:59:49 +00:00
Zack Weinberg
7468e0b523 safe-ctype.h (HC_UNKNOWN, [...]): New #defines.
include:
	* safe-ctype.h (HC_UNKNOWN, HC_ASCII, HC_EBCDIC, HOST_CHARSET):
	New #defines.
libiberty:
	* safe-ctype.c: Separate out EOF==-1 check.  Use HOST_CHARSET
	for charset determination.
gcc:
	* aclocal.m4 (gcc_AC_C_CHARSET): Delete.
	* configure.in: Don't use gcc_AC_C_CHARSET.
	* configure, config.in: Regenerate.
	* config/i370/i370.c, config/i370/i370.h: Use
	(HOST_CHARSET == HC_EBCDIC) or (HOST_CHARSET == HC_ASCII)
	instead of HOST_EBCDIC or !HOST_EBCDIC.  Clarify comments a tad.

From-SVN: r68317
2003-06-21 23:22:30 +00:00
Kaveh R. Ghazi
a54928c932 alloc-pool.c: Don't check HAVE_LONG_DOUBLE.
gcc:
	* alloc-pool.c: Don't check HAVE_LONG_DOUBLE.
	* fixinc/gnu-regex.c: Don't define `volatile'.
	* ggc-page.c: Don't check HAVE_LONG_DOUBLE.
	* ggc-simple.c: Likewise.
	* system.h: Don't define `volatile'.

	* aclocal.m4 (gcc_AC_C_VOLATILE, gcc_AC_C_LONG_DOUBLE): Delete.
	* configure.in (gcc_AC_C_VOLATILE, gcc_AC_C_LONG_DOUBLE): Don't
	call these macros.
	* config.in, configure: Regenerated.

include:
	* ansidecl.h: Delete HAVE_LONG_DOUBLE GCC bootstrap support.

From-SVN: r68085
2003-06-17 14:10:01 +00:00
Jim Blandy
49a19cfd34 hex.c (_hex_value): Make this unsigned.
libiberty/ChangeLog:
2003-05-14  Jim Blandy  <jimb@redhat.com>

	* hex.c (_hex_value): Make this unsigned.
	(hex_value): Update documentation for new return type.  hex_value
	now expands to an unsigned int expression, to avoid unexpected
	sign extension when we store it in a bfd_vma, which is larger than
	int on some platforms.
	* functions.texi: Regenerated.

include/ChangeLog:
2003-05-14  Jim Blandy  <jimb@redhat.com>

	* libiberty.h (hex_value): Make the value an unsigned int, to
	avoid unexpected sign-extension when cast to unsigned types larger
	than int --- like bfd_vma, on some platforms.
	(_hex_value): Update declaration.

From-SVN: r66840
2003-05-15 19:02:13 +00:00
Jason Merrill
9d70d418db s/burtle/iterative
From-SVN: r66577
2003-05-07 16:30:32 -04:00
Jason Merrill
5cc5a0d00d hashtab.c (burtle_hash): New fn.
libiberty/
        * hashtab.c (burtle_hash): New fn.
        * configure.in: Add AC_C_BIGENDIAN_CROSS.
        * aclocal.m4: Include accross.m4.
        * configure, config.in: Regenerate.
include/
        * hashtab.h (burtle_hash): Prototype.
        (burtle_hash_object): New macro.

From-SVN: r66565
2003-05-07 14:07:58 -04:00
Kaveh R. Ghazi
d41c4351fe ansidecl.h (ATTRIBUTE_NONNULL, [...]): New.
include:
	* ansidecl.h (ATTRIBUTE_NONNULL, ATTRIBUTE_NULL_PRINTF,
	ATTRIBUTE_NULL_PRINTF_1, ATTRIBUTE_NULL_PRINTF_2,
	ATTRIBUTE_NULL_PRINTF_3, ATTRIBUTE_NULL_PRINTF_4,
	ATTRIBUTE_NULL_PRINTF_5): New.
	(ATTRIBUTE_PRINTF): Add ATTRIBUTE_NONNULL.

gcc:
	* dwarf2asm.h: Delete obsolete comment.
	(dw2_asm_output_data, dw2_asm_output_delta, dw2_asm_output_offset,
	dw2_asm_output_pcrel, dw2_asm_output_addr,
	dw2_asm_output_addr_rtx, dw2_asm_output_encoded_addr_rtx,
	dw2_asm_output_nstring, dw2_asm_output_data_uleb128,
	dw2_asm_output_data_sleb128, dw2_asm_output_delta_uleb128,
	dw2_asm_output_delta_sleb128): Add ATTRIBUTE_NULL_PRINTF.

From-SVN: r64505
2003-03-17 22:57:27 +00:00
Jan Hubicka
dbccdc4211 ggc-common.c (ggc_mark_roots): Use htab_traverse_noresize.
* ggc-common.c (ggc_mark_roots): Use htab_traverse_noresize.

	* hashtab.h (htab_traverse_noresize): Declare.

	* hashtab.c (htab_traverse_noresize): Break out from ...
	* hashtab.c (htab_traverse): ... here.

From-SVN: r64496
2003-03-17 17:59:58 +00:00
Kaveh R. Ghazi
9308be9056 * libiberty.h: Document return value of physmem routines.
From-SVN: r63521
2003-02-27 20:28:40 +00:00
Kaveh R. Ghazi
a354191ebf libiberty.h (physmem_total, [...]): Prototype.
include:
	* libiberty.h (physmem_total, physmem_available): Prototype.

libiberty:
	* Makefile.in (CFILES): Add physmem.c.
	(REQUIRED_OFILES): Add physmem.o.
	* configure.in: Check for sys/pstat.h.
	(checkfuncs): Add pstat_getstatic and pstat_getdynamic.
	* physmem.c: New file, copied from textutils.

	* config.in, configure: Regenerated.

From-SVN: r63198
2003-02-21 00:27:04 +00:00
Daniel Jacobowitz
378ca31ee5 * libiberty.h (lrealpath): Add declaration.
From-SVN: r63185
2003-02-20 22:10:40 +00:00
Daniel Jacobowitz
74828682c7 hashtab.h (htab_alloc_with_arg, [...]): Add new types.
include/
	* hashtab.h (htab_alloc_with_arg, htab_free_with_arg): Add new types.
	(struct htab): Add alloc_arg, alloc_with_arg_f, free_with_arg_f.
	(htab_create_alloc_ex): New prototype.
	(htab_set_functions_ex): New prototype.

libiberty/
	* hashtab.c (htab_create_alloc_ex): New function.
	(hatab_set_functions_ex): New function.
	(htab_delete, htab_expand): Support alternate allocation functions.

From-SVN: r61820
2003-01-26 07:09:41 +00:00
Geoffrey Keating
17211ab553 Merge from pch-branch.
From-SVN: r61136
2003-01-10 02:22:34 +00:00
Simon Burge
f60d9a8a86 * libiberty.h (basename): Add NetBSD to the list.
From-SVN: r59421
2002-11-24 06:54:38 +00:00
Daniel Jacobowitz
42766f8db1 libiberty.h (make_relative_prefix): Add prototype.
include/
	* libiberty.h (make_relative_prefix): Add prototype.
libiberty/
	* Makefile.in: Add make-relative-prefix.c.
	* make-relative-prefix.c: New file.
	* functions.texi: Rebuilt.
gcc/
	* gcc.c (make_relative_prefix, split_directories)
	(free_split_directories): Removed.

From-SVN: r59385
2002-11-22 20:01:07 +00:00
Roger Sayle
45329aca77 partition.h: Close the extern "C" scope when compiling with C++.
* partition.h:  Close the extern "C" scope when compiling with C++.
	* getopt.h: Update copyright year from the previous patch.

From-SVN: r58570
2002-10-27 01:00:34 +00:00
Roger Sayle
f416dcd5bf re PR bootstrap/8351 (3.3 20021024 (experimental) fails to bootstrap on cygwin)
PR bootstrap/8351
	* getopt.h:  Avoid prototyping getopt with no arguments in C++.

Co-Authored-By: DJ Delorie <dj@redhat.com>

From-SVN: r58569
2002-10-27 00:54:50 +00:00
Nathan Tallent
e4aaa2f87d ansidecl.h (__STDC__): Add (__alpha && __cplusplus) to the list of platform compilers that may look...
* ansidecl.h (__STDC__): Add (__alpha && __cplusplus) to the
list of	platform compilers that may look, smell and act
like __STDC__ but that may not define it.

From-SVN: r58513
2002-10-24 19:36:25 -04:00
David O'Brien
6ba08913bd Remove bogus copyright message in my last entry.
From-SVN: r58188
2002-10-16 03:45:02 +00:00
David O'Brien
520157677f getopt.h: getopt is in unistd.h.
2002-10-11  David O'Brien  <obrien@FreeBSD.org>
	* getopt.h: getopt is in unistd.h.  The Single UNIX(tm) Specification,
	Version 2 Copyright (c)1997 The Open Group

Approved by:  Committed as obvious.

From-SVN: r58078
2002-10-12 04:01:04 +00:00
Alexandre Oliva
e2bb0cb4b3 libiberty.h (asprintf, vasprintf): Don't declare them if the corresponding HAVE_DECL_ macro is 1.
* libiberty.h (asprintf, vasprintf): Don't declare them if the
corresponding HAVE_DECL_ macro is 1.

From-SVN: r57324
2002-09-20 00:21:54 +00:00
Alan Modra
8ff82b06d6 demangle.h: #include "ansidecl.h" rather than #include <ansidecl.h>.
* demangle.h: #include "ansidecl.h" rather than #include <ansidecl.h>.
	* fibheap.h: Likewise.
	* hashtab.h: Likewise.
	* partition.h: Likewise.
	* sort.h: Likewise.
	* splay-tree.h: Likewise.

From-SVN: r54974
2002-06-25 09:44:15 +09:30