* configure.in: Don't run AC_PROG_CC_WORKS, because
we're not interested in the result and it might fail.
* libF77/configure.in: Likewise.
* libI77/configure.in: Likewise.
* libU77/configure.in: Likewise.
* configure: Regenerated.
* libF77/configure: Likewise.
* libI77/configure: Likewise.
* libU77/configure: Likewise.
In libobjc:
* configure.in: Don't run AC_PROG_CC_WORKS or AC_EXEEXT, because
we're not interested in the result and they might fail.
* configure: Regenerated.
Franz Sirl [Fri, 9 Feb 2001 03:15:56 +0000 (03:15 +0000)]
rs6000.c (output_toc): Allow 32-bit targets to handle DImode constants.
* config/rs6000/rs6000.c (output_toc): Allow 32-bit targets to
handle DImode constants. Use one TOC entry for SImode and smaller
constants, aligned properly.
Co-Authored-By: David Edelsohn <edelsohn@gnu.org>
From-SVN: r39557
Jason Merrill [Fri, 9 Feb 2001 02:00:44 +0000 (21:00 -0500)]
arm.c (arm_expand_prologue): Do tell the dwarf2 backend about the SP adjustment for saving the static chain...
* config/arm/arm.c (arm_expand_prologue): Do tell the dwarf2 backend
about the SP adjustment for saving the static chain pointer.
* dwarf2out.c (dwarf2out_frame_debug_expr): Use the specified
offset when setting a temporary CFA register.
* Make-lang.in (JAVA_OBJS): Added java/mangle_name.o
(JVGENMAIN_OBJS): Likewise.
* java-tree.h (append_gpp_mangled_name): New prototype.
* jcf-parse.c (ggc_mark_jcf): Argument now `void *.'
Removed cast calling `gcc_add_root.'
* jvgenmain.c (mangle_obstack): New global, initialized.
(main): Use it.
(do_mangle_class): Constify local `ptr.'
Removed macro `MANGLE_NAME.' Removed cast in `for.' Call
append_gpp_mangle_name and update `count' if necessary.
Use `mangle_obstack.'
* mangle.c (append_unicode_mangled_name): Removed.
(append_gpp_mangled_name): Likewise.
(unicode_mangling_length): Likewise.
(mangle_member_name): Return type set to `void.'
(mangle_field_decl): Don't append `U' in escaped names.
(mangle_method_decl): Likewise.
(mangle_member_name): Just use `append_gpp_mangled_name.'
* mangle_name.c: New file.
sparc.c (function_arg_record_value_3): Fix calculation of the number of integer registers required.
* config/sparc/sparc.c (function_arg_record_value_3): Fix
calculation of the number of integer registers required.
(function_arg_record_value): Likewise.
Jason Merrill [Thu, 8 Feb 2001 15:54:39 +0000 (10:54 -0500)]
search.c (shared_member_p): New function.
* search.c (shared_member_p): New function.
(lookup_field_r): Use it.
* cp-tree.h (SHARED_MEMBER_P): Remove.
* method.c (process_overload_item): Handle template-dependent array
bounds.
* pt.c (type_unification_real): If we end up with undeduced nontype
parms, try again.
* decl.c (lookup_name_real): Tweak warning to refer to decls, not
types.
* typeck2.c (friendly_abort): Don't say anything if we have
earlier errors or sorries.
* decl.c (check_tag_decl): Notice attempts to redefine bool and
wchar_t. Ignore if in_system_header.
* decl.c (maybe_push_cleanup_level): New fn...
(start_decl_1): ...split out from here.
* cvt.c (build_up_reference): Use it.
* cp-tree.h: Declare it.
Zack Weinberg [Wed, 7 Feb 2001 23:13:46 +0000 (23:13 +0000)]
cpphash.h (struct spec_nodes): Add n_true and n_false.
* cpphash.h (struct spec_nodes): Add n_true and n_false.
* cppinit.c (cpp_create_reader): Initialize them.
(append_include_chain): cxx_aware arg might be unused.
* cppexp.c (lex): In C++ mode, recognize 'true' and 'false'
keywords and give them their phase 7 meaning. Pedwarn about
this unless '__bool_true_false_are_defined' is defined.
Tom Tromey [Wed, 7 Feb 2001 22:46:28 +0000 (22:46 +0000)]
re PR libgcj/1906 (difference between gcj and jdk for MessageFormat)
Fix for PR libgcj/1906:
* java/text/MessageFormat.java (setLocale): Use named class
literals.
(forName): Removed.
(format(Object,StringBuffer,FieldPosition)): Special case if
argument is an Object[].
Mark Mitchell [Wed, 7 Feb 2001 18:58:07 +0000 (18:58 +0000)]
defaults.h (CPLUSPLUS_CPP_SPEC): New macro.
* defaults.h (CPLUSPLUS_CPP_SPEC): New macro.
* gcc.c (struct compiler): Add cpp_spec field.
(input_file_compiler): New variable.
(do_spec_1): Allow a particular compiler to handle `%C'
specially.
(main): Store the current compiler in input_file_compiler.
* tm.texi (CPLUSPLUS_CPP_SPEC): Document.
* lang-specs.h: Use CPLUSPLUS_CPP_SPEC for the preprocessor
spec.
Zack Weinberg [Wed, 7 Feb 2001 18:32:42 +0000 (18:32 +0000)]
cpphash.h (struct spec_nodes): Add n_true and n_false.
* cpphash.h (struct spec_nodes): Add n_true and n_false.
* cppinit.c (cpp_create_reader): Initialize them.
(append_include_chain): cxx_aware arg might be unused.
* cppexp.c (lex): In C++ mode, recognize 'true' and 'false'
keywords and give them their phase 7 meaning. Pedwarn about
this unless '__bool_true_false_are_defined' is defined.
Jeff Sturm [Wed, 7 Feb 2001 01:46:42 +0000 (01:46 +0000)]
typeck.c (build_prim_array_type): Added leading comment.
2001-02-05 Jeff Sturm <jeff.sturm@commerceone.com>
Alexandre Petit-Bianco <apbianco@cygnus.com>
* typeck.c (build_prim_array_type): Added leading comment.
(build_java_array_type): Moved locals out of
block. Always create the `data' field, fixed alignment to match
C++.
* final.c: Revert back my previous changes.
* output.h: Make profile_label_no extern.
* config/rs6000/rs6000.c (output_profile_hook): Use standard functions
for generating label.
Phil Edwards [Wed, 7 Feb 2001 00:03:21 +0000 (00:03 +0000)]
configopts.html: Fix HTML markup.
2001-02-06 Phil Edwards <pme@sources.redhat.com>
* docs/html/configopts.html: Fix HTML markup.
* docs/html/install.html: Bring up to date.
* docs/html/17_intro/C++STYLE: Add global variable conventions.
* docs/html/21_strings/howto.html: More notes.
* docs/html/22_locale/howto.html: Fix HTML markup.
* docs/html/27_io/howto.html: More notes.
* docs/html/27_io/binary_iostreams_kanze.txt: New file.
* docs/html/27_io/binary_iostreams_kuehl.txt: New file.
Ovidiu Predescu [Tue, 6 Feb 2001 17:18:10 +0000 (17:18 +0000)]
Tue Feb 5 8:53:33 2001 Ovidiu Predescu <ovidiu@cup.hp.com>
* objc/execute/bycopy-1.m, bycopy-2.m: Added new tests from Nicola
Pero <nicola@brainstorm.co.uk>.
* objc/execute/fdecl.m: Declare foo as pointer to AClass.
Richard Kenner [Tue, 6 Feb 2001 13:04:43 +0000 (13:04 +0000)]
stor-layout.c (reference_types_internal): New variable.
* stor-layout.c (reference_types_internal): New variable.
(internal_reference_types): New function.
(layout_type, case REFERENCE_TYPE): Make Pmode if internal.
* tree.h (internal_reference_types): New declaration.
Richard Kenner [Tue, 6 Feb 2001 12:39:15 +0000 (12:39 +0000)]
combine.c (nonzero_bits, case PLUS): If pointers extend unsigned and this is the sum of a pointer and a constant...
* combine.c (nonzero_bits, case PLUS): If pointers extend unsigned
and this is the sum of a pointer and a constant, we know the result
did not overflow.
(num_sign_bit_copies, case PLUS): Likewise.
* explow.c (convert_memory_address): Remove opposite SUBREG.
* function.c (instantiate_new_reg): New function (from common code).
(instantiate_virtual_regs_1): Call it.
For PLUS, handle if (plus (subreg (virt-reg) (const_int))
if pointers sign- or zero-extend.
* simplify-rtx.c (simplify_unary_operation, case ZERO_EXTEND):
If pointers extend unsigned, use inside of SUBREG.
(simplify_unary_operation, case SIGN_EXTEND): Likewise, if sign extend.
Nathan Sidwell [Tue, 6 Feb 2001 10:49:44 +0000 (10:49 +0000)]
pt.c (lookup_template_class): Make sure it's a primary template or template_template_parm when...
cp:
* pt.c (lookup_template_class): Make sure it's a primary
template or template_template_parm when called from the parser.
(instantiate_template_class): Add assertion.
testsuite:
* g++.old-deja/g++.pt/spec39.C: New test.
Benjamin Kosnik [Tue, 6 Feb 2001 06:32:01 +0000 (06:32 +0000)]
acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): New macro.
2001-02-05 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): New
macro. Consolidate all the bits to do with where includes might be
installed.
* aclocal.m4: Regenerate.
* configure.in: Use it.
* configure: Regenerate.
* src/Makefile.am (targetincludep): Use simplified rules.
(targetincludep): Rename gxx_target_include_dir.
(myincludep): Rename gxx_include_dir.
* src/Makefile.in: Regenerate.
* libsupc++/Makefile.am: Use simplified rules.
* libsupc++/Makefile.in: Regenerate.
final.c: Move the declaration profile_label_no to ...
* final.c: Move the declaration profile_label_no to ...
* output.h: ... here.
* function.c (expand_function_start): Call PROFILE_HOOK.
* config/rs6000/aix.h: Define PROFILE_HOOK.
* config/rs6000/rs6000-protos.h: output_profile_hook new.
* config/rs6000/rs6000.c (output_profile_hook): Define.
(output_prolog): Do nothing for ABI_AIX as it is taken care by
output_profile_hook.
tm.texi : Explain new macro PROFILE_HOOK.
extend.texi (Extended Asm): Do not say that semicolon is always a valid line-breaking character for GNU...
* extend.texi (Extended Asm): Do not say that semicolon is always
a valid line-breaking character for GNU assemblers. Use
newline-tab as the most commonly supported syntax. Use
newline-tab rather than semicolon in multi-insn examples.