* tree.c (max_int_size_in_bytes): New function, inspired from
code in function.c:assign_temp.
* tree.h (max_int_size_in_bytes): Declare.
* function.c (assign_temp): Use it.
* gimplify.c (create_tmp_var): Relax the assertions on the type
properties, not mandating constant size any more.
(force_constant_size): New static function.
(gimple_add_tmp_var): Use it, forcing variable size to a
constant upper bound if it is not constant on entry.
* ada/misc.c (gnat_type_max_size): Look at TYPE_ADA_SIZE if we have
not been able to get a constant upper bound from TYPE_SIZE_UNIT.
* gnat.dg/varsize_temp.adb: New test.
From-SVN: r114938
PR c++/11468
* init.c (build_new_1): Handle error_mark_nodes returned by
build_java_class_ref.
(build_java_class_ref): Do not abort compilation, but return
error_mark_node. Improve error message. Fix indentation.
* g++.dg/other/java2.C: New test.
From-SVN: r114937
PR target/27789
* config/i386/winnt.c (ix86_handle_selectany_attribute): Move check
for initialization and setting of one_only flag to ...
(i386_pe_encode_section_info): ...here.
(i386_pe_dllimport_p): Check for DECL_DLLIMPORT_P also.
Recheck that the symbol has not been defined.
cp
* decl.c (start_decl): Check that dllimports are not initialized.
testsuite
* g++.dg/ext/dllimport4.C. Add more tests for invalid
initialization.
From-SVN: r114927
2006-06-23 Richard Guenther <rguenther@suse.de>
* ggc-page.c (init_ggc): Do not round up the extra_order_size_table
sizes to MAX_ALIGNMENT. Fix the size_lookup table to honour
alignment requests instead. Add verification code.
Add struct tree_function_decl and struct tree_binfo size to
extra_order_size_table. Add missing element to size_lookup
table.
From-SVN: r114926
2006-06-22 Roger Sayle <roger@eyesopen.com>
John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
PR middle-end/28131
* expr.c (expand_expr_real_1) <VECTOR_CST>: Check whether the
call to lang_hooks.types.type_for_mode returned NULL_TREE.
Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
From-SVN: r114923
libdecnumber/
* decNumber.h (decNumberNegate): Remove.
gcc/
* dfp.c (decimal_to_decnumber): Do not use decNumberNegate to
negate dn -- manipulate it directly.
From-SVN: r114922
2006-06-22 Roger Sayle <roger@eyesopen.com>
Steven Bosscher <stevenb.gcc@gmail.com>
PR target/27531
* reload1.c (gen_reload): Call mark_jump_label on the new insns
generated by gen_move_insn to add REG_LABEL notes if necessary.
* gcc.dg/pr27531-1.c: New test case.
Co-Authored-By: Steven Bosscher <stevenb.gcc@gmail.com>
From-SVN: r114921
2006-06-22 Thomas Fitzsimmons <fitzsim@redhat.com>
* testsuite/libjava.jni/jni.exp (gcj_jni_invocation_test_one):
Link against -ljvm, not -lgcj.
From-SVN: r114902
2006-06-22 Thomas Fitzsimmons <fitzsim@redhat.com>
* Makefile.am (libjvm_la_LDFLAGS): Do not set -rpath to
toolexeclibdir.
* Makefile.in: Regenerate.
From-SVN: r114900
PR rtl-optimization/28121
* cfgexpand.c (tree_expand_cfg): Clean EDGE_EXECUTABLE flag from
the entry edge.
* gcc.dg/pr28121.c: New test.
From-SVN: r114898
2006-06-22 Jonathan Lennox <lennox@cs.columbia.edu>
Paolo Carlini <pcarlini@suse.de>
* include/ext/pb_ds/detail/resize_policy/
hash_prime_size_policy_imp.hpp: Cast to size_t instead.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r114894
PR libfortran/26769
* iresolve.c (gfc_resolve_reshape): Call reshape_r4 and
reshape_r8 instead of reshape_4 and reshape_8.
(gfc_resolve_transpose): Likewise for transpose.
* Makefile.am: Add r4 and r8 versions of reshape and transpose.
* Makefile.in: Regenerate.
* generated/reshape_r4.c: New file.
* generated/reshape_r8.c: New file.
* generated/transpose_r4.c: New file.
* generated/transpose_r8.c: New file.
From-SVN: r114880
gcc/
PR middle-end/28034
* coverage.c (coverage_counter_alloc): Leave the index type
unspecified.
(coverage_counter_alloc): Use null arguments for operands 2 and 3
of the ARRAY_REF.
From-SVN: r114870
* pthread_stop_world.c (GC_suspend_handler): Redirect to suspension
routine if signal is received and thread is flagged SUSPENDED.
(suspend_self): New function.
(GC_suspend_thread): New function.
(GC_resume_thread): New function.
* include/gc.h (GC_suspend_thread): Declare.
(GC_resumet_thread): Declare.
* include/private/pthread_support.h (SUSPENDED): New GC_thread
flag.
From-SVN: r114869
* tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): New function.
(find_interesting_uses_address): Punt if above function returns true.
From-SVN: r114851
* config/mips/mips.c (function_arg): Where one part of a
complex argument is in registers and the other part in the stack,
return a REG not a PARALLEL.
testsuite:
* gcc.c-torture/execute/complex-7.c: New.
From-SVN: r114847
* acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): When
cross-compiling, put headers in $prefix/$target/include/c++.
* configure: Regenerated.
* configure.ac: Set gcc_gxx_include_dir to $target/include/c++
when cross-compiling. Do not substitute libstdcxx_incdir.
* configure: Regenerated.
From-SVN: r114845
* critical.c (GOMP_critical_name_start): Fix *pptr initialization
when gomp_mutex_t is larger than pointer and HAVE_SYNC_BUILTINS is
defined.
From-SVN: r114843
* varasm.c (mergeable_string_section): Check for embedded NULs and
NUL termination in the first int_size_in_bytes (TREE_TYPE (decl))
rather than TREE_STRING_LENGTH bytes.
* gcc.dg/merge-all-constants-1.c: New test.
From-SVN: r114842