config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Check for
vector types if to use base reg for misaligned non-word ld/std.
OKed by David Edelsohn.
From-SVN: r95529
PR target/14619
* config/cris/cris.c (cris_target_asm_function_prologue): Create
dwarf2 label manually and put it after, not before the prologue.
From-SVN: r95521
PR target/19019
* mklibgcc.in: Pass -DSHARED when compiling all *_s${objext} objects.
* config/rs6000/darwin-ldouble.c: Only use the .symver directives
if SHARED is defined.
From-SVN: r95515
2005-02-24 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/tr1/6_containers/unordered/instantiate/hash.cc: Guard
wchar_t use with _GLIBCXX_USE_WCHAR_T.
From-SVN: r95514
2005-02-24 James A. Morrison <phython@gcc.gnu.org>
PR other/19896
* treetree.c (tree_code_create_variable): Initialize DECL_EXTERNAL,
TREE_PUBLIC, and TREE_STATIC for var_decl to zero. Don't call
rest_of_decl_compilation on static variables.
(pushdecl): Put DECL_EXPRs into the current BIND_EXPR for automatic
variables.
From-SVN: r95503
2005-02-24 James A. Morrison <phython@gcc.gnu.org>
* parse.y: (function_prototype): Accept EXTERNAL_REFERENCE_STORAGE.
Move function parameters check from ...
(function): ...Here. Update call to tree_code_create_function_initial.
(function_invocation): Use expressions_with_commas_opt instead of
expressions_with_commas.
(expressions_with_commas_opt): New rule.
* treetree.c (tree_code_create_function_prototype): Create PARM_DECLs
for function parameters.
(tree_code_create_function_initial): Remove PARMS parameter.
Don't create PARM_DECLs for function parameters.
* treetree.h (tree_code_create_function_initial): Remove PARMS
parameter.
From-SVN: r95501
2005-02-24 James A. Morrison <phython@gcc.gnu.org>
* MAINTAINERS (Language Front Ends Maintainers): Add myself as
treelang maintainer.
(Write After Approval): Remove myself.
From-SVN: r95500
PR middle-end/18902
* c-opts.c (c_common_post_options): Set flag_complex_method to 2
for c99.
* common.opt (fcx-limited-range): New.
* opts.c (set_fast_math_flags): Set flag_cx_limited_range.
* toplev.c (flag_complex_method): Initialize to 1.
(process_options): Set flag_complex_method to 0 if
flag_cx_limited_range.
* doc/invoke.texi (-fcx-limited-range): New.
From-SVN: r95493
PR c++/19878
* decl.c (grokvardecl): Set DECL_INTERFACE_KNOWN for declarations
with internal linkage.
PR c++/19878
* g++.dg/init/const2.C: New test.
From-SVN: r95490
* cse.c (delete_trivially_dead_insns): Speed up by using
NEXT_INSN and PREV_INSN directly instead of next_real_insn and
prev_real_insn.
From-SVN: r95488
* gfortran.h (gfc_component, gfc_actual_arglist, gfc_user_op): Make
'name' a 'const char *'.
(gfc_symbol): Likewise, also for 'module'.
(gfc_symtree): Make 'name' a 'const char *'.
(gfc_intrinsic_sym): Likewise, also for 'lib_name'.
(gfc_get_gsymbol, gfc_find_gsymbol): Add 'const' qualifier to
'char *' argument.
(gfc_intrinsic_symbol): Use 'gfc_get_string' instead of 'strcpy' to
initialize 'SYM->module'.
* check.c (gfc_check_minloc_maxloc, check_reduction): Check for NULL
pointer instead of empty string.
* dump-parse-tree.c (gfc_show_actual_arglist): Likewise.
* interface.c (gfc_compare_types): Adapt check to account for possible
NULL pointer.
(compare_actual_formal): Check for NULL pointer instead of empty
string.
* intrinsic.c (gfc_current_intrinsic, gfc_current_intrinsic_arg):
Add 'const' qualifier.
(conv_name): Return a heap allocated string.
(find_conv): Add 'const' qualifier to 'target'.
(add_sym): Use 'gfc_get_string' instead of 'strcpy'.
(make_generic): Check for NULL pointer instead of emptystring.
(make_alias): Use 'gfc_get_string' instead of 'strcpy'.
(add_conv): No need to strcpy result from 'conv_name'.
(sort_actual): Check for NULL pointer instead of emptystring.
* intrinsic.h (gfc_current_intrinsic, gfc_current_intrinsic_arg):
Adapt prototype.
* module.c (compare_true_names): Compare pointers instead of strings
for 'module' member.
(find_true_name): Initialize string fields with gfc_get_string.
(mio_pool_string): New function.
(mio_internal_string): Adapt comment.
(mio_component_ref, mio_component, mio_actual_arg): Use
'mio_pool_string' instead of 'mio_internal_string'.
(mio_symbol_interface): Add 'const' qualifier to string arguments.
Add level of indirection. Use 'mio_pool_string' instead of
'mio_internal_string'.
(load_needed, read_module): Use 'gfc_get_string' instead of 'strcpy'.
(write_common, write_symbol): Use 'mio_pool_string' instead of
'mio_internal_string'.
(write_symbol0, write_symbol1): Likewise, also check for NULL pointer
instead of empty string.
(write_operator, write_generic): Pass correct type variable to
'mio_symbol_interface'.
(write_symtree): Use 'mio_pool_string' instead of
'mio_internal_string'.
* primary.c (match_keyword_arg): Adapt check to possible
case of NULL pointer. Use 'gfc_get_string' instead of 'strcpy'.
* symbol.c (gfc_add_component, gfc_new_symtree, delete_symtree,
gfc_get_uop, gfc_new_symbol): Use 'gfc_get_string' instead of
'strcpy'.
(ambiguous_symbol): Check for NULL pointer instead of empty string.
(gfc_find_gsymbol, gfc_get_gsymbol): Add 'const' qualifier on string
arguments.
* trans-array.c (gfc_trans_auto_array_allocation): Check for NULL
pointer instead of empty string.
* trans-decl.c (gfc_sym_mangled_identifier,
gfc_sym_mangled_function_id, gfc_finish_var_decl, gfc_get_symbol_decl,
gfc_get_symbol_decl): Likewise.
* trans-io.c (gfc_new_nml_name_expr): Add 'const' qualifier to
argument. Copy string instead of pointing to it.
From-SVN: r95472
fortran/
* gfortran.h (gfc_get_namespace): Add second argument to prototype.
* intrinsic.c (gfc_intrinsic_init_1): Pass second argument to
gfc_get_namespace.
* module.c (mio_namespace_ref, load_needed): Likewise.
* parse.c (parse_interface, parse_contained): Likewise. Here the
correct second argument matters.
* symbol.c (gfc_get_namespace): Add parent_types argument, only copy
parent's implicit types if this is set.
(gfc_symbol_init_2): Pass second argument to gfc_get_namespace.
* trans-common.c (build_common_decl): Likewise.
testsuite/
* gfortran.dg/implicit_3.f90: New test.
From-SVN: r95463
gcc/cp/ChangeLog:
* decl.c (grokvardecl): Don't exempt anonymous types from having
linkage for variables that have linkage other than "C".
gcc/testsuite/ChangeLog:
* g++.dg/lookup/anon2.C: Don't let access checks make it look like
the test passes.
* g++.dg/other/anon3.C: Accept a warning.
From-SVN: r95462
2005-02-23 Thomas Fitzsimmons <fitzsim@redhat.com>
PR libgcj/16923
* gcj.texi (Invocation): Add descriptions of JvVMInitArgs and
JvVMOption.
2005-02-23 Thomas Fitzsimmons <fitzsim@redhat.com>
PR libgcj/16923
* jni.cc (JNI_CreateJavaVM): Check JNI version. Cast args to
JvVMInitArgs. Pass args to _Jv_CreateJavaVM and check return
value. Move argument parsing code to prims.cc.
* prims.cc (no_properties): Remove.
(_Jv_Compiler_Properties): Initialize to NULL.
(_Jv_Properties_Count): Initialize to 0.
(parse_verbose_args): New function.
(parse_init_args): New function.
(_Jv_CreateJavaVM): Call parse_init_args.
(_Jv_RunMain): Check return value of _Jv_CreateJavaVM.
* gcj/cni.h (JvVMOption): New struct.
(JvVMInitArgs): Likewise.
(JvCreateJavaVM): Declare vm_args as JvVMInitArgs* rather than
void*.
* libjava/gcj/javaprims.h (_Jv_VMOption): New struct.
(_Jv_VMInitArgs): Likewise.
* include/java-props.h (_Jv_Properties_Count): Declare.
* java/lang/natRuntime.cc (insertSystemProperties): Use
_Jv_Properties_Count in for loop exit condition.
* testsuite/libjava.jni/jni.exp
(gcj_invocation_compile_c_to_binary): New procedure.
(gcj_invocation_test_one): Likewise.
(gcj_jni_run): Run JNI invocation API tests.
* testsuite/libjava.jni/invocation/PR16923.c,
testsuite/libjava.jni/invocation/PR16923.java,
testsuite/libjava.jni/invocation/PR16923.out: New test.
From-SVN: r95459