gcc/gcc
Sebastian Pop bcbe3b255e graphite.c: Revert previous patch.
2009-06-09  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite.c: Revert previous patch.

From-SVN: r148321
2009-06-09 18:20:52 +00:00
..
ada utils2.c (build_call_alloc_dealloc_proc): New helper for build_call_alloc_dealloc with arguments to be interpreted... 2009-06-09 15:32:03 +00:00
config sh-protos.h (sh_optimization_options): Declare. 2009-06-08 23:40:09 +00:00
cp re PR c++/40381 (Revision 142379 caused ICE with deleted functions) 2009-06-09 14:18:45 -04:00
doc 2009-06-08 Ghassan Shobaki <ghassan.shobaki@amd.com> 2009-06-08 16:00:13 +00:00
fortran trans-decl.c (gfc_generate_function_code): Use 2009-06-09 19:21:45 +02:00
ginclude Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
java dwarf2.h (enum dwarf_location_atom): Add INTERNAL_DW_OP_tls_addr. 2009-06-08 04:00:50 +00:00
objc common.opt (fcompare-debug=, [...]): New. 2009-06-08 07:46:02 +00:00
objcp ansidecl.h (EXPORTED_CONST): Define. 2009-06-03 20:19:55 +00:00
po * gcc.pot: Regenerate. 2009-05-10 11:36:44 +01:00
testsuite re PR c++/40381 (Revision 142379 caused ICE with deleted functions) 2009-06-09 14:18:45 -04:00
ABOUT-GCC-NLS ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
BASE-VER * BASE-VER: Change to 4.5.0. 2009-03-27 20:56:48 +00:00
COPYING
COPYING.LIB
COPYING3
COPYING3.LIB
ChangeLog graphite.c: Revert previous patch. 2009-06-09 18:20:52 +00:00
ChangeLog-1997 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog-1998 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog-1999 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog-2000 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog-2001 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog-2002 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog-2003 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog-2004 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog-2005 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog-2006 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog-2007 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog-2008 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog.dataflow ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog.lib ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog.ptr ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog.tree-ssa ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
ChangeLog.tuples ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
DATESTAMP Daily bump. 2009-06-09 00:16:49 +00:00
DEV-PHASE
FSFChangeLog ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
FSFChangeLog.10 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
FSFChangeLog.11 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
LANGUAGES ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
Makefile.in ansidecl.h (EXPORTED_CONST): Define. 2009-06-03 20:19:55 +00:00
ONEWS ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
README.Portability
acinclude.m4 ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
aclocal.m4 re PR target/27880 (undefined reference to `_Unwind_GetIPInfo') 2008-11-12 21:37:34 +00:00
addresses.h
alias.c alias.c (find_base_term): Check for NULL term before returning. 2009-06-01 15:20:20 +00:00
alias.h re PR middle-end/13146 (inheritance for nonoverlapping_component_refs_p) 2009-04-03 10:24:28 +00:00
alloc-pool.c alloc-pool.c (alloc_pool_descriptor): Use an insert_opion value instead of an int. 2009-04-30 16:24:31 +00:00
alloc-pool.h
attribs.c attribs.c (register_attribute): Use CONST_CAST. 2009-06-01 16:35:01 +00:00
auto-inc-dec.c auto-inc-dec.c: Fix pass description, remove apparent accidental duplication. 2009-05-14 20:12:09 +00:00
basic-block.h basic-block.h (ENTRY_BLOCK, EXIT_BLOCK): Document that neither of them is supposed to hold actual statements. 2009-06-07 21:26:59 +02:00
bb-reorder.c bb-reorder.c (partition_hot_cold_basic_blocks): Do not enter/exit cfglayout mode. 2009-03-30 08:58:52 +00:00
bitmap.c re PR middle-end/39301 (ICE in register_overhead, at bitmap.c:115) 2009-05-16 15:42:15 -07:00
bitmap.h hashtab.h: Update GTY annotations to new syntax 2009-04-22 14:29:36 -04:00
bt-load.c df.h: Include "timevar.h". 2009-04-17 05:40:46 +00:00
builtin-attrs.def
builtin-types.def targhooks.h (struct gcc_target): New member unwind_word_mode. 2008-06-18 20:49:12 +00:00
builtins.c builtins.c (do_mpc_ckconv, [...]): Use mpc_realref/mpc_imagref instead of MPC_RE/MPC_IM. 2009-06-05 16:20:25 +00:00
builtins.def builtins.def (va_start, [...]): Fix my previous commit. 2009-04-15 14:07:55 +00:00
c-aux-info.c
c-common.c dwarf2.h (enum dwarf_location_atom): Add INTERNAL_DW_OP_tls_addr. 2009-06-08 04:00:50 +00:00
c-common.def re PR middle-end/323 (optimized code gives strange floating point results) 2009-03-30 02:50:44 +01:00
c-common.h tree.c (build_tree_list_vec_stat): New function. 2009-05-21 05:58:39 +00:00
c-config-lang.in
c-convert.c tm.texi (Misc): Document TARGET_INVALID_PARAMETER_TYPE... 2009-05-20 23:06:12 -04:00
c-cppbuiltin.c re PR c/39037 (FLOAT_CONST_DECIMAL64 pragma not supported) 2009-05-07 22:34:08 +00:00
c-decl.c c-decl.c (finish_decl): Use bool for variable was_incomplete. 2009-06-07 21:41:06 +02:00
c-dump.c
c-errors.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
c-format.c * c-format.c (handle_format_attribute): Fix comment typo. 2009-05-22 11:51:19 +10:00
c-format.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
c-gimplify.c re PR c/39983 (ICE: type mismatch in address expression) 2009-05-03 19:57:32 +00:00
c-lang.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
c-lex.c c-lex.c (c_lex_with_flags): Expect cpp_hashnode in tok->val.node.node. 2009-05-10 15:27:32 +01:00
c-objc-common.c c-objc-common.c (c_tree_printer): Print identifiers with pp_identifier, not pp_string. 2009-05-01 15:09:20 +01:00
c-objc-common.h c-common.c (c_expand_expr, c_staticp): Remove. 2009-03-29 18:26:43 +00:00
c-omp.c combine.c (record_value_for_reg): Change 0 to VOIDmode, twice. 2009-04-24 15:31:38 +00:00
c-opts.c re PR c/40172 (Revision 147596 breaks bootstrap) 2009-05-19 19:29:27 +00:00
c-parser.c builtins.c (validate_gimple_arglist): Don't use va_arg with enum type. 2009-05-29 22:45:54 +00:00
c-pch.c diagnostic.c (inform): Add an explicit location_t parameter. 2008-08-20 13:35:00 +00:00
c-ppoutput.c re PR preprocessor/34695 (Preprocessor warning->error conversion from -Werror is silent) 2009-03-29 23:56:07 +01:00
c-pragma.c c-pragma.c (enum pragma_switch_t): Prefix constants with PRAGMA_. 2009-05-13 18:26:14 +00:00
c-pragma.h c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP value to 200805. 2008-06-06 15:01:54 +02:00
c-pretty-print.c pretty-print.h (struct pretty_print_info): Add translate_identifiers. 2009-05-10 11:28:34 +01:00
c-pretty-print.h c-objc-common.c (c_tree_printer): Print identifiers with pp_identifier, not pp_string. 2009-05-01 15:09:20 +01:00
c-semantics.c re PR c/19771 (VLA deallocation) 2009-04-19 21:19:54 +01:00
c-tree.h builtins.c (validate_gimple_arglist): Don't use va_arg with enum type. 2009-05-29 22:45:54 +00:00
c-typeck.c attribs.c (register_attribute): Use CONST_CAST. 2009-06-01 16:35:01 +00:00
c.opt re PR c/40172 (Revision 147596 breaks bootstrap) 2009-05-19 19:29:27 +00:00
caller-save.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
calls.c Revert due to PR40320: 2009-06-01 14:45:18 +00:00
cfg.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
cfganal.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
cfgbuild.c cfghooks.c (tidy_fallthru_edges): Remove find_basic_blocks references from comments. 2009-04-22 04:48:34 +00:00
cfgcleanup.c cfgcleanup.c (try_crossjump_to_edge): Only skip past NOTE_INSN_BASIC_BLOCK. 2009-05-29 17:33:46 -07:00
cfgexpand.c re PR debug/40012 (Revision 146817 generated bad debug info for local variables) 2009-06-08 11:37:12 +00:00
cfghooks.c cfghooks.c (tidy_fallthru_edges): Remove find_basic_blocks references from comments. 2009-04-22 04:48:34 +00:00
cfghooks.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
cfglayout.c cfgcleanup.c (try_crossjump_to_edge): Only skip past NOTE_INSN_BASIC_BLOCK. 2009-05-29 17:33:46 -07:00
cfglayout.h
cfgloop.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
cfgloop.h ipa-pure-const.c (struct funct_state_d): New fields state_previously_known, looping_previously_known... 2009-04-26 23:35:27 +00:00
cfgloopanal.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
cfgloopmanip.c re PR middle-end/39124 (-fno-exceptions leads to a ICE) 2009-02-10 17:23:17 +01:00
cfgrtl.c cfgcleanup.c (try_crossjump_to_edge): Only skip past NOTE_INSN_BASIC_BLOCK. 2009-05-29 17:33:46 -07:00
cgraph.c re PR middle-end/40102 (Revision 147294 caused ICE: verify_cgraph_node) 2009-06-08 17:17:52 +00:00
cgraph.h cgraph.c (dump_cgraph_node): Dump size/time/benefit. 2009-05-25 21:59:24 +00:00
cgraphbuild.c cgraphbuild.c (record_reference): Use cgraph_mark_address_taken_node. 2009-05-10 15:11:01 +00:00
cgraphunit.c re PR middle-end/39834 (verify_cgraph_node failed with -O3 -Winline) 2009-06-08 19:21:33 +00:00
cif-code.def Bring from lto-branch: 2009-03-28 11:10:06 +00:00
collect2-aix.c Makefile.in (COLLECT2_OBJS): Add collect2-aix.o. 2009-06-02 19:06:56 +00:00
collect2-aix.h Makefile.in (COLLECT2_OBJS): Add collect2-aix.o. 2009-06-02 19:06:56 +00:00
collect2.c collect2.c (target_system_root): New variable. 2009-06-02 19:08:28 +00:00
collect2.h
combine-stack-adj.c df.h: Include "timevar.h". 2009-04-17 05:40:46 +00:00
combine.c * combine.c (move_deaths): Compare LUIDs within the same BB only. 2009-06-02 08:08:13 +00:00
common.opt common.opt (fcompare-debug=, [...]): New. 2009-06-08 07:46:02 +00:00
conditions.h
config.build
config.gcc freebsd-stdint.h: New file. 2009-06-01 03:03:37 +00:00
config.host config.host (alpha*-*-linux*): Use driver-alpha.o and alpha/x-alpha. 2009-03-24 10:33:57 +00:00
config.in basic-block.h (struct basic_block_def): Add discriminator field. 2009-06-04 16:12:27 -07:00
configure basic-block.h (struct basic_block_def): Add discriminator field. 2009-06-04 16:12:27 -07:00
configure.ac basic-block.h (struct basic_block_def): Add discriminator field. 2009-06-04 16:12:27 -07:00
convert.c re PR middle-end/323 (optimized code gives strange floating point results) 2009-03-30 02:50:44 +01:00
convert.h
coretypes.h tree.c (list_equal_p): New function. 2009-04-25 18:27:19 +00:00
coverage.c common.opt (fcompare-debug=, [...]): New. 2009-06-08 07:46:02 +00:00
coverage.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
cppdefault.c
cppdefault.h
cppspec.c
crtstuff.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
cse.c re PR middle-end/33699 (missing optimization on const addr area store) 2009-05-28 07:42:52 +00:00
cselib.c re PR rtl-optimization/39794 (Miscompile with -O2 -funroll-loops) 2009-04-24 08:58:02 +02:00
cselib.h hashtab.h: Update GTY annotations to new syntax 2009-04-22 14:29:36 -04:00
cstamp-h.in
dbgcnt.c Fix enum conversions which are invalid in C++: 2009-04-20 19:35:00 +00:00
dbgcnt.def dbgcnt.def (cprop1, [...]): Remove 2009-04-27 17:21:27 +00:00
dbgcnt.h
dbxout.c basic-block.h (struct basic_block_def): Add discriminator field. 2009-06-04 16:12:27 -07:00
dbxout.h
dce.c tree-ssa-operands.c (get_expr_operands): Do not handle INDIRECT_REFs in the handled-component case. 2009-05-29 09:49:42 +00:00
dce.h
ddg.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
ddg.h
debug.c basic-block.h (struct basic_block_def): Add discriminator field. 2009-06-04 16:12:27 -07:00
debug.h basic-block.h (struct basic_block_def): Add discriminator field. 2009-06-04 16:12:27 -07:00
defaults.h * defaults.h (UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE) 2009-05-19 18:12:57 +00:00
df-byte-scan.c re PR middle-end/37448 (cannot compile big function) 2008-10-11 23:39:21 +00:00
df-core.c * df-core.c (df_ref_debug): Honor -fdump-noaddr. 2009-06-02 08:08:57 +00:00
df-problems.c re PR rtl-optimization/33928 (30% performance slowdown in floating-point code caused by r118475) 2009-05-08 12:22:30 +00:00
df-scan.c collect2.c (is_ctor_dtor): Change type of ret field in struct names to symkind. 2009-04-27 20:25:48 +00:00
df.h re PR rtl-optimization/33928 (30% performance slowdown in floating-point code caused by r118475) 2009-05-08 12:22:30 +00:00
dfp.c re PR middle-end/39986 (decimal float constant is incorrect when cc1 is a 64-bit binary) 2009-05-06 16:59:53 +00:00
dfp.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
diagnostic.c diagnostic.c (diagnostic_build_prefix): Always print columns. 2009-06-01 16:09:33 +00:00
diagnostic.def ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
diagnostic.h tree-pretty-print.c (print_call_name): Take the callee, not the call itself. 2009-05-31 18:01:38 -04:00
dojump.c Merge cond-optab branch. 2009-05-12 09:43:48 +00:00
dominance.c basic-block.h (get_all_dominated_blocks): Declare. 2009-04-20 14:01:52 +00:00
domwalk.c backport: ChangeLog.tuples: ChangeLog from gimple-tuples-branch. 2008-07-28 14:33:56 +00:00
domwalk.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
double-int.c Fix enum conversions which are invalid in C++: 2009-04-20 19:35:00 +00:00
double-int.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
dse.c re PR middle-end/40035 (ICE when cross-compiling with -Os) 2009-05-14 06:52:00 +10:00
dse.h
dummy-checksum.c ansidecl.h (EXPORTED_CONST): Define. 2009-06-03 20:19:55 +00:00
dwarf2.h dwarf2.h (enum dwarf_location_atom): Add INTERNAL_DW_OP_tls_addr. 2009-06-08 04:00:50 +00:00
dwarf2asm.c dwarf2asm.c (dw2_force_const_mem): Defer creation of declarations for constants until... 2009-06-04 05:50:34 +00:00
dwarf2asm.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
dwarf2out.c dwarf2out.c (emit_cfa_remember): New variable. 2009-06-09 00:39:32 +02:00
dwarf2out.h cfgcleanup.c (try_crossjump_to_edge): Only skip past NOTE_INSN_BASIC_BLOCK. 2009-05-29 17:33:46 -07:00
ebitmap.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
ebitmap.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
emit-rtl.c cfgcleanup.c (try_crossjump_to_edge): Only skip past NOTE_INSN_BASIC_BLOCK. 2009-05-29 17:33:46 -07:00
emit-rtl.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
emutls.c re PR other/40024 (trunk/gcc-4.3/gcc: * emutls.c (emutls_destroy): Don' t fall out of the array bound.) 2009-06-01 20:03:26 +02:00
errors.c errors.c (internal_error): Commentary typo fix. 2009-06-07 21:29:43 +02:00
errors.h Makefile.in: Update dependencies. 2009-04-22 16:01:29 +00:00
et-forest.c dwarf2out.c (new_cfi, [...]): Fix -Wc++-compat and/or -Wcast-qual warnings. 2008-06-26 00:25:08 +00:00
et-forest.h
except.c cgraph.c (dump_cgraph_node): Dump size/time/benefit. 2009-05-25 21:59:24 +00:00
except.h cgraph.c (dump_cgraph_node): Dump size/time/benefit. 2009-05-25 21:59:24 +00:00
exec-tool.in Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
explow.c tm.texi (LEGITIMIZE_ADDRESS): Revise documentation. 2009-05-04 12:52:41 +00:00
expmed.c Merge cond-optab branch. 2009-05-12 09:43:48 +00:00
expr.c misaligned store support 2009-06-05 15:28:50 +00:00
expr.h Merge cond-optab branch. 2009-05-12 09:43:48 +00:00
final.c common.opt (fcompare-debug=, [...]): New. 2009-06-08 07:46:02 +00:00
fixed-value.c collect2.c (is_ctor_dtor): Change type of ret field in struct names to symkind. 2009-04-27 20:25:48 +00:00
fixed-value.h hashtab.h: Update GTY annotations to new syntax 2009-04-22 14:29:36 -04:00
flags.h flags.h (extra_warnings): Delete. 2009-05-03 19:14:06 +00:00
fold-const.c re PR middle-end/40328 (internal compiler error: in set_ssa_val_to, at tree-ssa-sccvn.c:1811) 2009-06-03 15:30:52 +00:00
fp-test.c
function.c cfgcleanup.c (try_crossjump_to_edge): Only skip past NOTE_INSN_BASIC_BLOCK. 2009-05-29 17:33:46 -07:00
function.h alias.c (struct alias_set_entry_d): Rename from struct alias_set_entry. 2009-05-16 06:54:11 +00:00
fwprop.c re PR rtl-optimization/33928 (30% performance slowdown in floating-point code caused by r118475) 2009-05-08 12:22:30 +00:00
gbl-ctors.h gbl-ctors.h: Add header guard. 2009-06-07 21:53:14 +02:00
gcc-plugin.h attribute_plugin.c: Include gcc-plugin.h first. 2009-05-27 12:57:59 +00:00
gcc.c common.opt (fcompare-debug=, [...]): New. 2009-06-08 07:46:02 +00:00
gcc.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
gccbug.in
gccspec.c
gcov-dump.c gcc.c (process_command): Update copyright notice dates. 2009-02-03 21:48:23 +01:00
gcov-io.c dwarf2out.c (new_cfi, [...]): Fix -Wc++-compat and/or -Wcast-qual warnings. 2008-06-26 00:25:08 +00:00
gcov-io.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gcov-iov.c
gcov.c gcc.c (process_command): Update copyright notice dates. 2009-02-03 21:48:23 +01:00
gcse.c gcse.c (target.h): Include. 2009-05-27 18:47:26 +00:00
gdbinit.in ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
genattr.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
genattrtab.c ansidecl.h (EXPORTED_CONST): Define. 2009-06-03 20:19:55 +00:00
genautomata.c Makefile.in: Update dependencies. 2009-04-22 16:01:29 +00:00
gencheck.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
genchecksum.c ansidecl.h (EXPORTED_CONST): Define. 2009-06-03 20:19:55 +00:00
gencodes.c
genconditions.c
genconfig.c
genconstants.c
genemit.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
genextract.c genoutput.c (validate_optab_operands): New. 2009-04-08 15:00:34 +00:00
genflags.c genoutput.c (validate_optab_operands): New. 2009-04-08 15:00:34 +00:00
gengenrtl.c
gengtype-lex.l hashtab.h: Update GTY annotations to new syntax 2009-04-22 14:29:36 -04:00
gengtype-parse.c gengtype-parse.c (parse_error): Add newline after message. 2009-04-24 09:46:47 -04:00
gengtype.c ansidecl.h (EXPORTED_CONST): Define. 2009-06-03 20:19:55 +00:00
gengtype.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
genmddeps.c
genmodes.c
genmultilib
genopinit.c Merge cond-optab branch. 2009-05-12 09:43:48 +00:00
genoutput.c genoutput.c (validate_optab_operands): New. 2009-04-08 15:00:34 +00:00
genpeep.c
genpreds.c Fix from Dave Korn in case a backend does not declare any define_register_constraints 2009-04-30 21:52:15 +00:00
genrecog.c basic-block.h (enum profile_status): Break out of struct control_flow_graph. 2009-05-11 01:02:40 +00:00
gensupport.c collect2.c (is_ctor_dtor): Change type of ret field in struct names to symkind. 2009-04-27 20:25:48 +00:00
gensupport.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
ggc-common.c plugins.texi (Loading plugins): typo. 2009-05-26 17:33:33 +00:00
ggc-none.c
ggc-page.c plugins.texi (Loading plugins): typo. 2009-05-26 17:33:33 +00:00
ggc-zone.c plugins.texi (Loading plugins): typo. 2009-05-26 17:33:33 +00:00
ggc.h plugins.texi (Loading plugins): typo. 2009-05-26 17:33:33 +00:00
gimple-iterator.c errors.c (internal_error): Commentary typo fix. 2009-06-07 21:29:43 +02:00
gimple-low.c re PR tree-optimization/38964 (TBAA side-effects of C++ new still missing) 2009-05-22 20:41:31 +00:00
gimple-pretty-print.c basic-block.h (struct basic_block_def): Add discriminator field. 2009-06-04 16:12:27 -07:00
gimple.c ansidecl.h (EXPORTED_CONST): Define. 2009-06-03 20:19:55 +00:00
gimple.def re PR tree-optimization/38964 (TBAA side-effects of C++ new still missing) 2009-05-22 20:41:31 +00:00
gimple.h re PR tree-optimization/38964 (TBAA side-effects of C++ new still missing) 2009-05-22 20:41:31 +00:00
gimplify.c re PR tree-optimization/38964 (TBAA side-effects of C++ new still missing) 2009-05-22 20:41:31 +00:00
glimits.h ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
graph.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
graph.h
graphds.c
graphds.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
graphite.c graphite.c: Revert previous patch. 2009-06-09 18:20:52 +00:00
graphite.h alias.c (struct alias_set_entry_d): Rename from struct alias_set_entry. 2009-05-16 06:54:11 +00:00
gsstruct.def Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
gstab.h gstab.h (stab_code_type): Define, to be used instead of the __stab_debug_code enum, made anonymous. 2009-05-20 12:44:44 +00:00
gsyms.h ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
gsyslimits.h
gthr-aix.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-dce.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-gnat.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-gnat.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-lynx.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-mipssde.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-nks.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-posix.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-posix.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-posix95.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-rtems.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-single.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-solaris.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-tpf.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gthr-vxworks.h gthr-vxworks.h (struct __gthread_once_t): Add alignment and padding for PPC. 2009-04-22 10:53:53 +00:00
gthr-win32.h mingw-tls.c: New file. 2009-05-30 11:05:56 +02:00
gthr.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
haifa-sched.c collect2.c (is_ctor_dtor): Change type of ret field in struct names to symkind. 2009-04-27 20:25:48 +00:00
hard-reg-set.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
hooks.c tm.texi (Misc): Document TARGET_INVALID_PARAMETER_TYPE... 2009-05-20 23:06:12 -04:00
hooks.h tm.texi (Misc): Document TARGET_INVALID_PARAMETER_TYPE... 2009-05-20 23:06:12 -04:00
host-default.c
hosthooks-def.h
hosthooks.h
hwint.h re PR middle-end/39301 (ICE in register_overhead, at bitmap.c:115) 2009-05-16 15:42:15 -07:00
ifcvt.c Merge cond-optab branch. 2009-05-12 09:43:48 +00:00
incpath.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
incpath.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
init-regs.c df.h: Include "timevar.h". 2009-04-17 05:40:46 +00:00
input.h Makefile.in: Replace toplev.h with TOPLEV_H. 2008-07-21 14:29:27 +00:00
insn-addr.h
insn-notes.def cfgcleanup.c (try_crossjump_to_edge): Only skip past NOTE_INSN_BASIC_BLOCK. 2009-05-29 17:33:46 -07:00
integrate.c hashtab.h: Update GTY annotations to new syntax 2009-04-22 14:29:36 -04:00
integrate.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
intl.c intl.c (locale_encoding, [...]): New. 2009-05-04 13:23:50 +01:00
intl.h intl.c (locale_encoding, [...]): New. 2009-05-04 13:23:50 +01:00
ipa-cp.c cgraph.c (dump_cgraph_node): Dump size/time/benefit. 2009-05-25 21:59:24 +00:00
ipa-inline.c cgraph.c (dump_cgraph_node): Dump size/time/benefit. 2009-05-25 21:59:24 +00:00
ipa-prop.c re PR tree-optimization/40323 (compiling just takes forever and doesn't really process) 2009-06-03 13:56:05 +02:00
ipa-prop.h cgraphbuild.c (compute_call_stmt_bb_frequency): Accept function argument; handle correctly when profile is absent. 2009-05-08 19:19:51 +00:00
ipa-pure-const.c alias.c (struct alias_set_entry_d): Rename from struct alias_set_entry. 2009-05-16 06:54:11 +00:00
ipa-reference.c alias.c (struct alias_set_entry_d): Rename from struct alias_set_entry. 2009-05-16 06:54:11 +00:00
ipa-reference.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
ipa-struct-reorg.c ipa-struct-reorg.c (do_reorg_1): Fix whitespace in dump output. 2009-06-07 21:42:54 +02:00
ipa-struct-reorg.h tree-parloops.c: Change license to GPLv3. 2009-02-10 17:59:08 +00:00
ipa-type-escape.c ipa-reference.c: Do not include c-common.h, include splay-tree.h. 2009-05-01 20:25:26 +00:00
ipa-type-escape.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
ipa-utils.c ipa-reference.c: Do not include c-common.h, include splay-tree.h. 2009-05-01 20:25:26 +00:00
ipa-utils.h re PR middle-end/40147 (Memory leak in revision 147436) 2009-05-14 08:45:32 -07:00
ipa.c cgraphbuild.c (record_reference): Use cgraph_mark_address_taken_node. 2009-05-10 15:11:01 +00:00
ira-build.c revert: reload.c (push_reload, [...]): Use df_get_live_out instead of DF_LR_OUT. 2009-04-03 22:02:33 +00:00
ira-color.c re PR rtl-optimization/39762 (IRA ICE with -msoft-float) 2009-04-16 15:15:48 +00:00
ira-conflicts.c ira-conflicts.c (add_insn_allocno_copies): Fix wrong conditional. 2009-05-15 20:05:36 +00:00
ira-costs.c Fix enum conversions which are invalid in C++: 2009-04-20 19:35:00 +00:00
ira-emit.c re PR rtl-optimization/39762 (IRA ICE with -msoft-float) 2009-04-16 15:15:48 +00:00
ira-int.h re PR rtl-optimization/39762 (IRA ICE with -msoft-float) 2009-04-16 15:15:48 +00:00
ira-lives.c re PR rtl-optimization/39762 (IRA ICE with -msoft-float) 2009-04-16 15:15:48 +00:00
ira.c Fix from Dave Korn in case a backend does not declare any define_register_constraints 2009-04-30 21:52:15 +00:00
ira.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
jump.c jump.c (returnjump_p): Handle delayed branches. 2009-06-08 18:49:17 +00:00
lambda-code.c re PR middle-end/13146 (inheritance for nonoverlapping_component_refs_p) 2009-04-03 10:24:28 +00:00
lambda-mat.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
lambda-trans.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
lambda.h re PR tree-optimization/37031 (ICE for h264ref in gather_interchange_stats with -ftree-loop-linear) 2009-01-08 17:01:42 +01:00
langhooks-def.h dbxout.c (dbxout_range_type): Add LOW and HIGH parameters. 2009-05-15 09:11:40 +00:00
langhooks.c attribs.c (decl_attributes): Use %qE for identifiers in diagnostics. 2009-05-05 00:44:36 +01:00
langhooks.h dbxout.c (dbxout_range_type): Add LOW and HIGH parameters. 2009-05-15 09:11:40 +00:00
lcm.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
libfuncs.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
libgcc-std.ver ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
libgcc2.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
libgcc2.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
libgcov.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
limitx.h ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
limity.h
lists.c Fix enum conversions which are invalid in C++: 2009-04-20 19:35:00 +00:00
longlong.h longlong.h (sub_ddmmss): New for ia64. 2009-02-12 08:30:53 -08:00
loop-doloop.c re PR rtl-optimization/37782 (Stage2 ada compiler miscompiled) 2008-11-03 12:01:11 -08:00
loop-init.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
loop-invariant.c re PR rtl-optimization/33928 (30% performance slowdown in floating-point code caused by r118475) 2009-05-08 07:51:46 +00:00
loop-iv.c loop-iv.c (simple_rhs_p): Allow expressions that are function_invariant_p. 2009-04-24 11:05:59 +00:00
loop-unroll.c loop-unroll.c (struct iv_to_split): Add pointer to next. 2009-06-02 17:47:33 +00:00
loop-unswitch.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
lower-subreg.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
machmode.def
machmode.h Fix enum conversions which are invalid in C++: 2009-04-20 19:35:00 +00:00
main.c re PR other/31567 (cc1, cc1plus, etc. don't support @file mechanism) 2009-04-17 17:11:46 -04:00
matrix-reorg.c tree-flow.h (make_value_handle, [...]): Remove prototypes for removed functions. 2009-06-07 21:44:39 +02:00
mcf.c combine.c (record_value_for_reg): Change 0 to VOIDmode, twice. 2009-04-24 15:31:38 +00:00
mips-tdump.c alpha.c (alpha_initialize_trampoline): Change 0 to LCT_NORMAL in function call. 2009-05-14 10:10:23 +00:00
mips-tfile.c gstab.h (stab_code_type): Define, to be used instead of the __stab_debug_code enum, made anonymous. 2009-05-20 12:44:44 +00:00
mkconfig.sh
mkmap-flat.awk Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
mkmap-symver.awk re PR target/36669 (Wrong versioning for __float128) 2008-07-02 08:59:19 -07:00
mode-classes.def
mode-switching.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
modulo-sched.c SMS - Pass the actual schedulable rows to compute_split_row 2009-03-31 06:19:06 +00:00
omega.c alias.c (struct alias_set_entry_d): Rename from struct alias_set_entry. 2009-05-16 06:54:11 +00:00
omega.h alias.c (struct alias_set_entry_d): Rename from struct alias_set_entry. 2009-05-16 06:54:11 +00:00
omp-builtins.def c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP value to 200805. 2008-06-06 15:01:54 +02:00
omp-low.c re PR middle-end/39958 (OMP tasking creates invalid gimple) 2009-05-29 15:14:53 +02:00
opt-functions.awk Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
opt-gather.awk
optabs.c alias.c (struct alias_set_entry_d): Rename from struct alias_set_entry. 2009-05-16 06:54:11 +00:00
optabs.h alias.c (struct alias_set_entry_d): Rename from struct alias_set_entry. 2009-05-16 06:54:11 +00:00
optc-gen.awk optc-gen.awk: Warn if an option flag has multiple different help strings. 2009-03-30 05:55:57 +00:00
opth-gen.awk hashtab.h: Update GTY annotations to new syntax 2009-04-22 14:29:36 -04:00
opts-common.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
opts.c re PR driver/40144 (ice in common_handle_option) 2009-05-14 20:56:54 +00:00
opts.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
output.h tree.h (CONSTRUCTOR_BITFIELD_P): True if NODE... 2009-06-01 14:42:56 +00:00
params.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
params.def 2009-06-08 Ghassan Shobaki <ghassan.shobaki@amd.com> 2009-06-08 16:00:13 +00:00
params.h 2009-06-08 Ghassan Shobaki <ghassan.shobaki@amd.com> 2009-06-08 16:00:13 +00:00
passes.c re PR middle-end/39834 (verify_cgraph_node failed with -O3 -Winline) 2009-06-08 19:21:33 +00:00
plugin.c plugins.texi (Loading plugins): typo. 2009-05-26 17:33:33 +00:00
plugin.h 2009-05-13 Taras Glek <tglek@mozilla.com> 2009-05-14 01:38:33 +00:00
pointer-set.c
pointer-set.h
postreload-gcse.c postreload-gcse.c (eliminate_partially_redundant_loads): Use optimize_bb_for_size_p. 2008-08-31 12:52:07 +00:00
postreload.c Fix enum conversions which are invalid in C++: 2009-04-20 19:35:00 +00:00
predict.c cgraph.c (dump_cgraph_node): Dump size/time/benefit. 2009-05-25 21:59:24 +00:00
predict.def Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
predict.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
prefix.c
prefix.h
pretty-print.c pretty-print.h (struct pretty_print_info): Add translate_identifiers. 2009-05-10 11:28:34 +01:00
pretty-print.h pretty-print.h (struct pretty_print_info): Add translate_identifiers. 2009-05-10 11:28:34 +01:00
print-rtl.c print_rtl (print_rtx): Don't print modes in EXPR_LISTs and INSN_LISTs that are out of the REG_NOTE range. 2009-06-02 17:51:00 +00:00
print-tree.c re PR tree-optimization/38964 (TBAA side-effects of C++ new still missing) 2009-05-22 20:41:31 +00:00
profile.c re PR c/7543 (no warning for always-false "if (!a & 0x4)" bitwise and on boolean value) 2008-10-24 10:09:06 +00:00
profile.h profile.h: Really add it. 2008-08-18 12:22:36 -07:00
read-rtl.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
real.c real.c (encode_ieee_half): Define. 2009-05-15 10:22:58 -04:00
real.h builtins.c (do_mpc_arg1, [...]): New. 2009-05-15 18:08:10 +00:00
recog.c re PR middle-end/40316 (Revision 147995 breaks gcc.target/i386/lea.c) 2009-06-01 19:13:04 +02:00
recog.h re PR inline-asm/39058 (ICE with double in inline-asm) 2009-02-02 14:23:43 +01:00
reg-notes.def cfgcleanup.c (try_crossjump_to_edge): Only skip past NOTE_INSN_BASIC_BLOCK. 2009-05-29 17:33:46 -07:00
reg-stack.c re PR target/39856 (ICE in subst_stack_regs_pat, at reg-stack.c:1386) 2009-05-22 19:00:45 +00:00
regcprop.c Makefile.in (OBJS-common): Add regcprop.o. 2009-05-07 15:47:11 +00:00
reginfo.c passes.c (finish_optimization_passes): Change i to int. 2009-05-14 21:29:48 +00:00
regmove.c basic-block.h (enum profile_status): Break out of struct control_flow_graph. 2009-05-11 01:02:40 +00:00
regrename.c Makefile.in (OBJS-common): Add regcprop.o. 2009-05-07 15:47:11 +00:00
regs.h [multiple changes] 2008-08-26 12:39:58 +00:00
regstat.c regstat.c (regstat_n_sets_and_refs): Remove duplicate definition. 2009-05-31 23:11:51 +00:00
reload.c tm.texi (TARGET_LEGITIMATE_ADDRESS_P): Refer mainly to this in the former documentation of... 2009-05-14 13:42:45 +00:00
reload.h cgraph.h (struct cgraph_node): Reorder fields for 64-bit hosts. 2009-03-23 16:29:33 +00:00
reload1.c combine.c (record_value_for_reg): Change 0 to VOIDmode, twice. 2009-04-24 15:31:38 +00:00
reorg.c Fix enum conversions which are invalid in C++: 2009-04-20 19:35:00 +00:00
resource.c re PR rtl-optimization/39938 (build broke for cris-elf with dbr_schedule change) 2009-04-29 21:44:26 +00:00
resource.h
rtl-error.c cgraph.c: Fix typos in comments. 2008-06-06 05:42:00 +00:00
rtl.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
rtl.def cfgcleanup.c (try_crossjump_to_edge): Only skip past NOTE_INSN_BASIC_BLOCK. 2009-05-29 17:33:46 -07:00
rtl.h cfgcleanup.c (try_crossjump_to_edge): Only skip past NOTE_INSN_BASIC_BLOCK. 2009-05-29 17:33:46 -07:00
rtlanal.c rtlanal.c (alloc_reg_note): New function, broken out of add_reg_note. 2009-04-16 16:08:04 +00:00
rtlhooks-def.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
rtlhooks.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
sbitmap.c ra.h (add_neighbor): Fix -Wc++-compat and/or -Wcast-qual warnings. 2008-06-26 00:12:56 +00:00
sbitmap.h
sched-deps.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
sched-ebb.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
sched-int.h basic-block.h (enum profile_status): Break out of struct control_flow_graph. 2009-05-11 01:02:40 +00:00
sched-rgn.c re PR middle-end/37499 (Scheduling pass 2 time increases by order of magnitude) 2008-09-18 12:29:48 +04:00
sched-vis.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
sdbout.c basic-block.h (struct basic_block_def): Add discriminator field. 2009-06-04 16:12:27 -07:00
sdbout.h
see.c re PR middle-end/37448 (cannot compile big function) 2008-10-11 23:39:21 +00:00
sel-sched-dump.c sel-sched-dump.c: Surround with #ifdef INSN_SCHEDULING. 2008-09-01 16:38:44 +04:00
sel-sched-dump.h sel-sched.h, [...]: New files. 2008-09-01 12:57:00 +04:00
sel-sched-ir.c re PR rtl-optimization/40101 (200.sixtrack ICEs in get_seqno_by_preds, at sel-sched-ir.c:3752) 2009-05-29 19:33:17 +04:00
sel-sched-ir.h 20071210-2.c: New testcase. 2009-04-28 14:01:52 +04:00
sel-sched.c re PR rtl-optimization/40101 (200.sixtrack ICEs in get_seqno_by_preds, at sel-sched-ir.c:3752) 2009-05-29 19:33:17 +04:00
sel-sched.h sel-sched.h, [...]: New files. 2008-09-01 12:57:00 +04:00
simplify-rtx.c Merge cond-optab branch. 2009-05-12 09:43:48 +00:00
sparseset.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
sparseset.h
sreal.c
sreal.h
ssaexpand.h ssaexpand.h (struct ssaexpand): Member 'values' is a bitmap. 2009-04-27 12:16:00 +00:00
stab.def
stack-ptr-mod.c df.h: Include "timevar.h". 2009-04-17 05:40:46 +00:00
statistics.c statistics.c (statistics_counter_event): Do not record event in pass dump if its number == -1. 2009-06-03 18:36:47 +04:00
statistics.h
stmt.c attribs.c (decl_attributes): Use %qE for identifiers in diagnostics. 2009-05-05 00:44:36 +01:00
stor-layout.c attribs.c (decl_attributes): Use %qE for identifiers in diagnostics. 2009-05-05 00:44:36 +01:00
store-motion.c * store-motion.c Do not include params.h 2009-05-14 20:14:18 +00:00
stringpool.c hashtab.h: Update GTY annotations to new syntax 2009-04-22 14:29:36 -04:00
stub-objc.c Fix enum conversions which are invalid in C++: 2009-04-20 19:35:00 +00:00
sync-builtins.def
system.h system.h (CONST_CAST2): Use C++ const_cast when compiled as C++ 2009-05-27 19:53:03 +00:00
target-def.h re PR middle-end/33699 (missing optimization on const addr area store) 2009-05-28 07:42:52 +00:00
target.h re PR middle-end/33699 (missing optimization on const addr area store) 2009-05-28 07:42:52 +00:00
targhooks.c tm.texi (TARGET_LEGITIMATE_ADDRESS_P): Refer mainly to this in the former documentation of... 2009-05-14 13:42:45 +00:00
targhooks.h tm.texi (TARGET_LEGITIMATE_ADDRESS_P): Refer mainly to this in the former documentation of... 2009-05-14 13:42:45 +00:00
timevar.c
timevar.def passes.texi (Tree-SSA passes): Document SLP pass. 2009-05-24 08:44:56 +00:00
timevar.h df.h: Include "timevar.h". 2009-04-17 05:40:46 +00:00
tlink.c tlink.c: Include "libiberty.h". 2008-11-20 14:21:51 +01:00
toplev.c common.opt (fcompare-debug=, [...]): New. 2009-06-08 07:46:02 +00:00
toplev.h Makefile.in (bversion.h, s-bversion): New targets. 2009-05-22 16:08:04 +10:00
tracer.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
tree-affine.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
tree-affine.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
tree-browser.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
tree-browser.def
tree-call-cdce.c re PR middle-end/13146 (inheritance for nonoverlapping_component_refs_p) 2009-04-03 10:24:28 +00:00
tree-cfg.c tree-cfg.c (gimple_merge_blocks): Commentary typo fix. 2009-06-07 21:33:25 +02:00
tree-cfgcleanup.c tree-eh.c (tree_remove_unreachable_handlers): Handle shared labels. 2009-04-25 09:02:05 +00:00
tree-chrec.c dbxout.c (dbxout_range_type): Add LOW and HIGH parameters. 2009-05-15 09:11:40 +00:00
tree-chrec.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
tree-complex.c tree-flow.h (insert_edge_copies_seq): Undeclare. 2009-05-20 12:18:10 +02:00
tree-data-ref.c re PR tree-optimization/40254 (SPEC2006 403.gcc miscompares) 2009-05-28 09:02:53 +00:00
tree-data-ref.h passes.texi (Tree-SSA passes): Document SLP pass. 2009-05-24 08:44:56 +00:00
tree-dfa.c tree-ssa-operands.c (get_expr_operands): Do not handle INDIRECT_REFs in the handled-component case. 2009-05-29 09:49:42 +00:00
tree-dump.c Fix enum conversions which are invalid in C++: 2009-04-20 19:35:00 +00:00
tree-dump.h Fix enum conversions which are invalid in C++: 2009-04-20 19:35:00 +00:00
tree-eh.c alias.c (struct alias_set_entry_d): Rename from struct alias_set_entry. 2009-05-16 06:54:11 +00:00
tree-flow-inline.h tree-flow.h (insert_edge_copies_seq): Undeclare. 2009-05-20 12:18:10 +02:00
tree-flow.h tree-flow.h (make_value_handle, [...]): Remove prototypes for removed functions. 2009-06-07 21:44:39 +02:00
tree-if-conv.c passes.c (init_optimization_passes): Strip now incorrect comment. 2009-05-11 12:19:00 +00:00
tree-inline.c re PR middle-end/40102 (Revision 147294 caused ICE: verify_cgraph_node) 2009-06-08 17:17:52 +00:00
tree-inline.h loop-36.c: Reduce amount of iterations to 2 so unrolling still happens. 2009-05-12 14:05:28 +00:00
tree-into-ssa.c tree-into-ssa.c (regs_to_rename, [...]): Remove. 2009-04-27 11:15:53 +00:00
tree-iterator.c tree-iterator.c (expr_only): Remove. 2009-04-18 11:47:22 +00:00
tree-iterator.h tree-iterator.c (tsi_split_statement_list_after, [...]): Remove. 2009-04-16 18:50:07 +00:00
tree-loop-distribution.c omp-low.c (lower_rec_input_clauses): Build correct address expressions. 2009-04-15 16:12:01 +00:00
tree-loop-linear.c re PR tree-optimization/37031 (ICE for h264ref in gather_interchange_stats with -ftree-loop-linear) 2009-01-08 17:01:42 +01:00
tree-mudflap.c tree-flow.h (insert_edge_copies_seq): Undeclare. 2009-05-20 12:18:10 +02:00
tree-mudflap.h
tree-nested.c tree-nested.c (finalize_nesting_tree_1): Declare the frame_decl in the binding tree. 2009-06-05 06:17:51 +00:00
tree-nomudflap.c ansidecl.h (EXPORTED_CONST): Define. 2009-06-03 20:19:55 +00:00
tree-nrv.c passes.c (init_optimization_passes): Strip now incorrect comment. 2009-05-11 12:19:00 +00:00
tree-object-size.c tree-object-size.c (addr_object_size): Add OSI argument. 2009-06-08 18:28:38 +02:00
tree-optimize.c tree-pass.h (pass_del_ssa, [...]): Remove decls. 2009-04-26 22:09:50 +00:00
tree-outof-ssa.c re PR middle-end/39976 (Big sixtrack degradation on powerpc 32/64 after revision r146817) 2009-05-13 20:14:44 +00:00
tree-parloops.c tree-ssa-alias.h (dump_points_to_solution): Declare. 2009-05-25 13:35:10 +00:00
tree-pass.h tree-pass.h (TODO_update_ssa_any): Document internal use only. 2009-06-07 21:55:47 +02:00
tree-phinodes.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
tree-predcom.c alias.c (struct alias_set_entry_d): Rename from struct alias_set_entry. 2009-05-16 06:54:11 +00:00
tree-pretty-print.c tree-pretty-print.c (print_call_name): Take the callee, not the call itself. 2009-05-31 18:01:38 -04:00
tree-profile.c omp-low.c (lower_rec_input_clauses): Build correct address expressions. 2009-04-15 16:12:01 +00:00
tree-scalar-evolution.c tree-scalar-evolution.c (follow_ssa_edge_expr): Turn into CASE_CONVERT. 2009-05-19 19:14:42 +00:00
tree-scalar-evolution.h tree-scalar-evolution.c (analyze_scalar_evolution_in_loop): Extend comments. 2009-03-04 17:50:20 +00:00
tree-sra.c re PR tree-optimization/40351 (ice in generate_subtree_copies for Linux kernel build) 2009-06-09 18:52:57 +02:00
tree-ssa-address.c hashtab.h: Update GTY annotations to new syntax 2009-04-22 14:29:36 -04:00
tree-ssa-alias.c tree-ssa-alias.c (nonaliasing_component_refs_p): Remove short-cutting on the first component. 2009-05-29 13:31:47 +00:00
tree-ssa-alias.h tree-ssa-alias.c (ao_ref_init): New function. 2009-05-28 13:24:16 +00:00
tree-ssa-ccp.c re PR middle-end/40252 (Internal compiler error on samba4 (verify_gimple failed)) 2009-05-26 11:41:34 +00:00
tree-ssa-coalesce.c tree-ssa-coalesce.c (coalesce_cost): Do not take ciritical parameter; update callers. 2009-05-02 11:00:59 +00:00
tree-ssa-copy.c tree-ssa-copy.c (replace_exp_1): Move op for warning-free use with checking disabled. 2009-05-28 12:28:38 +00:00
tree-ssa-copyrename.c re PR tree-optimization/38964 (TBAA side-effects of C++ new still missing) 2009-05-22 20:41:31 +00:00
tree-ssa-dce.c tree-ssa-operands.h (push_stmt_changes, [...]): Delete. 2009-05-24 11:20:29 +00:00
tree-ssa-dom.c tree-ssa-operands.h (push_stmt_changes, [...]): Delete. 2009-05-24 11:20:29 +00:00
tree-ssa-dse.c passes.c (init_optimization_passes): Strip now incorrect comment. 2009-05-11 12:19:00 +00:00
tree-ssa-forwprop.c tree-ssa-operands.h (push_stmt_changes, [...]): Delete. 2009-05-24 11:20:29 +00:00
tree-ssa-ifcombine.c re PR middle-end/13146 (inheritance for nonoverlapping_component_refs_p) 2009-04-03 10:24:28 +00:00
tree-ssa-live.c re PR middle-end/40340 (Fortification warning no longer emitted in inlines) 2009-06-05 17:35:13 +02:00
tree-ssa-live.h ssaexpand.h (struct ssaexpand): Member 'values' is a bitmap. 2009-04-27 12:16:00 +00:00
tree-ssa-loop-ch.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
tree-ssa-loop-im.c tree-ssa-sccvn.c (copy_reference_ops_from_ref): Record TMR_ORIGINAL. 2009-05-21 22:43:19 +00:00
tree-ssa-loop-ivcanon.c pr21829.c: Simplify matching since we now optimize better. 2009-05-11 20:54:56 +00:00
tree-ssa-loop-ivopts.c tree-ssa-loop-ivopts.c (strip_offset_1): New case. 2009-05-29 19:25:04 +00:00
tree-ssa-loop-manip.c gimplify.c (mark_addressable): Export. 2009-03-27 23:00:22 +00:00
tree-ssa-loop-niter.c re PR tree-optimization/40087 (Number of iterations analysis wrong) 2009-05-20 00:33:54 +00:00
tree-ssa-loop-prefetch.c 2009-06-08 Ghassan Shobaki <ghassan.shobaki@amd.com> 2009-06-09 17:00:31 +00:00
tree-ssa-loop-unswitch.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
tree-ssa-loop.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
tree-ssa-math-opts.c df.h: Include "timevar.h". 2009-04-17 05:40:46 +00:00
tree-ssa-operands.c tree-ssa-operands.c (get_expr_operands): Do not handle INDIRECT_REFs in the handled-component case. 2009-05-29 09:49:42 +00:00
tree-ssa-operands.h tree-ssa-operands.h (push_stmt_changes, [...]): Delete. 2009-05-24 11:20:29 +00:00
tree-ssa-phiopt.c passes.c (init_optimization_passes): Strip now incorrect comment. 2009-05-11 12:19:00 +00:00
tree-ssa-phiprop.c common.opt (-ftree-forwprop, [...]): New options, enabled by default. 2009-05-15 12:26:48 +00:00
tree-ssa-pre.c errors.c (internal_error): Commentary typo fix. 2009-06-07 21:29:43 +02:00
tree-ssa-propagate.c tree-ssa-operands.h (push_stmt_changes, [...]): Delete. 2009-05-24 11:20:29 +00:00
tree-ssa-propagate.h tree-ssa-propagate.c (stmt_makes_single_load): Remove. 2009-04-16 18:48:16 +00:00
tree-ssa-reassoc.c passes.c (init_optimization_passes): Strip now incorrect comment. 2009-05-11 12:19:00 +00:00
tree-ssa-sccvn.c tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use DECL_SIZE consistently. 2009-06-03 09:54:09 +00:00
tree-ssa-sccvn.h tree-flow.h (make_value_handle, [...]): Remove prototypes for removed functions. 2009-06-07 21:44:39 +02:00
tree-ssa-sink.c passes.c (init_optimization_passes): Strip now incorrect comment. 2009-05-11 12:19:00 +00:00
tree-ssa-structalias.c tree-ssa-operands.c (get_expr_operands): Do not handle INDIRECT_REFs in the handled-component case. 2009-05-29 09:49:42 +00:00
tree-ssa-ter.c ssaexpand.h (struct ssaexpand): Member 'values' is a bitmap. 2009-04-27 12:16:00 +00:00
tree-ssa-threadedge.c tree.h (SSA_NAME_VALUE): Remove. 2009-04-28 08:50:19 +00:00
tree-ssa-threadupdate.c loop-unswitch.c (unswitch_single_loop): Use optimize_loop_for_speed_p. 2008-08-29 10:35:57 +00:00
tree-ssa-uncprop.c tree-ssa-uncprop.c (associate_equivalences_with_edges): Use last_basic_block for size of bb->index indexed array. 2009-04-04 18:31:39 +00:00
tree-ssa.c dbxout.c (dbxout_range_type): Add LOW and HIGH parameters. 2009-05-15 09:11:40 +00:00
tree-ssanames.c df.h: Include "timevar.h". 2009-04-17 05:40:46 +00:00
tree-stdarg.c passes.c (init_optimization_passes): Strip now incorrect comment. 2009-05-11 12:19:00 +00:00
tree-stdarg.h
tree-switch-conversion.c re PR tree-optimization/39845 (ICE: in make_decl_rtl, at varasm.c:1304) 2009-04-22 11:30:04 +00:00
tree-tailcall.c passes.c (init_optimization_passes): Strip now incorrect comment. 2009-05-11 12:19:00 +00:00
tree-vect-data-refs.c misaligned store support 2009-06-05 15:28:50 +00:00
tree-vect-generic.c df.h: Include "timevar.h". 2009-04-17 05:40:46 +00:00
tree-vect-loop-manip.c re PR tree-optimization/39129 (The meaning of 'BB' in "too many BBs in loop") 2009-06-01 08:15:01 +00:00
tree-vect-loop.c re PR tree-optimization/39129 (The meaning of 'BB' in "too many BBs in loop") 2009-06-01 08:15:01 +00:00
tree-vect-patterns.c passes.texi (Tree-SSA passes): Document SLP pass. 2009-05-24 08:44:56 +00:00
tree-vect-slp.c re PR tree-optimization/39129 (The meaning of 'BB' in "too many BBs in loop") 2009-06-01 08:15:01 +00:00
tree-vect-stmts.c misaligned store support 2009-06-05 15:28:50 +00:00
tree-vectorizer.c tree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1): Don't mark phis for renaming. 2009-05-31 10:43:38 +00:00
tree-vectorizer.h re PR tree-optimization/39129 (The meaning of 'BB' in "too many BBs in loop") 2009-06-01 08:15:01 +00:00
tree-vrp.c dbxout.c (dbxout_range_type): Add LOW and HIGH parameters. 2009-05-15 09:11:40 +00:00
tree.c re PR middle-end/40340 (Fortification warning no longer emitted in inlines) 2009-06-05 17:35:13 +02:00
tree.def re PR tree-optimization/38964 (TBAA side-effects of C++ new still missing) 2009-05-22 20:41:31 +00:00
tree.h dwarf2out.c (dwarf2out_cfi_label): Add FORCE argument... 2009-06-01 21:43:24 +02:00
treestruct.def re PR middle-end/13146 (inheritance for nonoverlapping_component_refs_p) 2009-04-03 10:24:28 +00:00
tsystem.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
typeclass.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind-c.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind-compat.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind-compat.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind-dw2-fde-compat.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind-dw2-fde-darwin.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind-dw2-fde-glibc.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind-dw2-fde.c unwind-dw2-fde.c (fde_unencoded_compare): Replace type punning assignments with memcpy calls. 2009-05-19 23:24:30 +10:00
unwind-dw2-fde.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind-dw2.c unwind-dw2.c (_Unwind_DebugHook): New function. 2009-05-27 23:12:21 +00:00
unwind-dw2.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind-generic.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind-pe.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind-sjlj.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unwind.inc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
value-prof.c re PR c/7543 (no warning for always-false "if (!a & 0x4)" bitwise and on boolean value) 2008-10-24 10:09:06 +00:00
value-prof.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
var-tracking.c combine.c (record_value_for_reg): Change 0 to VOIDmode, twice. 2009-04-24 15:31:38 +00:00
varasm.c tree.h (CONSTRUCTOR_BITFIELD_P): True if NODE... 2009-06-01 14:42:56 +00:00
varpool.c [multiple changes] 2009-04-02 15:45:25 +00:00
varray.c alloc-pool.c (alloc_pool_descriptor): Use an insert_opion value instead of an int. 2009-04-30 16:24:31 +00:00
varray.h hashtab.h: Update GTY annotations to new syntax 2009-04-22 14:29:36 -04:00
vec.c alloc-pool.c (alloc_pool_descriptor): Use an insert_opion value instead of an int. 2009-04-30 16:24:31 +00:00
vec.h combine.c (record_value_for_reg): Change 0 to VOIDmode, twice. 2009-04-24 15:31:38 +00:00
vecprim.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
version.c ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
version.h
vmsdbg.h
vmsdbgout.c basic-block.h (struct basic_block_def): Add discriminator field. 2009-06-04 16:12:27 -07:00
web.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
xcoff.h ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
xcoffout.c basic-block.h (struct basic_block_def): Add discriminator field. 2009-06-04 16:12:27 -07:00
xcoffout.h * xcoffout.h (xcoffout_source_line): Update prototype. 2009-06-05 14:03:09 -04:00

README.Portability

Copyright (C) 2000, 2003 Free Software Foundation, Inc.

This file is intended to contain a few notes about writing C code
within GCC so that it compiles without error on the full range of
compilers GCC needs to be able to compile on.

The problem is that many ISO-standard constructs are not accepted by
either old or buggy compilers, and we keep getting bitten by them.
This knowledge until know has been sparsely spread around, so I
thought I'd collect it in one useful place.  Please add and correct
any problems as you come across them.

I'm going to start from a base of the ISO C90 standard, since that is
probably what most people code to naturally.  Obviously using
constructs introduced after that is not a good idea.

For the complete coding style conventions used in GCC, please read
http://gcc.gnu.org/codingconventions.html


String literals
---------------

Irix6 "cc -n32" and OSF4 "cc" have problems with constant string
initializers with parens around it, e.g.

const char string[] = ("A string");

This is unfortunate since this is what the GNU gettext macro N_
produces.  You need to find a different way to code it.

Some compilers like MSVC++ have fairly low limits on the maximum
length of a string literal; 509 is the lowest we've come across.  You
may need to break up a long printf statement into many smaller ones.


Empty macro arguments
---------------------

ISO C (6.8.3 in the 1990 standard) specifies the following:

If (before argument substitution) any argument consists of no
preprocessing tokens, the behavior is undefined.

This was relaxed by ISO C99, but some older compilers emit an error,
so code like

#define foo(x, y) x y
foo (bar, )

needs to be coded in some other way.


free and realloc
----------------

Some implementations crash upon attempts to free or realloc the null
pointer.  Thus if mem might be null, you need to write

  if (mem)
    free (mem);


Trigraphs
---------

You weren't going to use them anyway, but some otherwise ISO C
compliant compilers do not accept trigraphs.


Suffixes on Integer Constants
-----------------------------

You should never use a 'l' suffix on integer constants ('L' is fine),
since it can easily be confused with the number '1'.


			Common Coding Pitfalls
			======================

errno
-----

errno might be declared as a macro.


Implicit int
------------

In C, the 'int' keyword can often be omitted from type declarations.
For instance, you can write

  unsigned variable;

as shorthand for

  unsigned int variable;

There are several places where this can cause trouble.  First, suppose
'variable' is a long; then you might think

  (unsigned) variable

would convert it to unsigned long.  It does not.  It converts to
unsigned int.  This mostly causes problems on 64-bit platforms, where
long and int are not the same size.

Second, if you write a function definition with no return type at
all:

  operate (int a, int b)
  {
    ...
  }

that function is expected to return int, *not* void.  GCC will warn
about this.

Implicit function declarations always have return type int.  So if you
correct the above definition to

  void
  operate (int a, int b)
  ...

but operate() is called above its definition, you will get an error
about a "type mismatch with previous implicit declaration".  The cure
is to prototype all functions at the top of the file, or in an
appropriate header.

Char vs unsigned char vs int
----------------------------

In C, unqualified 'char' may be either signed or unsigned; it is the
implementation's choice.  When you are processing 7-bit ASCII, it does
not matter.  But when your program must handle arbitrary binary data,
or fully 8-bit character sets, you have a problem.  The most obvious
issue is if you have a look-up table indexed by characters.

For instance, the character '\341' in ISO Latin 1 is SMALL LETTER A
WITH ACUTE ACCENT.  In the proper locale, isalpha('\341') will be
true.  But if you read '\341' from a file and store it in a plain
char, isalpha(c) may look up character 225, or it may look up
character -31.  And the ctype table has no entry at offset -31, so
your program will crash.  (If you're lucky.)

It is wise to use unsigned char everywhere you possibly can.  This
avoids all these problems.  Unfortunately, the routines in <string.h>
take plain char arguments, so you have to remember to cast them back
and forth - or avoid the use of strxxx() functions, which is probably
a good idea anyway.

Another common mistake is to use either char or unsigned char to
receive the result of getc() or related stdio functions.  They may
return EOF, which is outside the range of values representable by
char.  If you use char, some legal character value may be confused
with EOF, such as '\377' (SMALL LETTER Y WITH UMLAUT, in Latin-1).
The correct choice is int.

A more subtle version of the same mistake might look like this:

  unsigned char pushback[NPUSHBACK];
  int pbidx;
  #define unget(c) (assert(pbidx < NPUSHBACK), pushback[pbidx++] = (c))
  #define get(c) (pbidx ? pushback[--pbidx] : getchar())
  ...
  unget(EOF);

which will mysteriously turn a pushed-back EOF into a SMALL LETTER Y
WITH UMLAUT.


Other common pitfalls
---------------------

o Expecting 'plain' char to be either sign or unsigned extending.

o Shifting an item by a negative amount or by greater than or equal to
  the number of bits in a type (expecting shifts by 32 to be sensible
  has caused quite a number of bugs at least in the early days).

o Expecting ints shifted right to be sign extended.

o Modifying the same value twice within one sequence point.

o Host vs. target floating point representation, including emitting NaNs
  and Infinities in a form that the assembler handles.

o qsort being an unstable sort function (unstable in the sense that
  multiple items that sort the same may be sorted in different orders
  by different qsort functions).

o Passing incorrect types to fprintf and friends.

o Adding a function declaration for a module declared in another file to
  a .c file instead of to a .h file.