* cp-tree.h (TREE_NONLOCAL_FLAG): Remove.
(storetags): Declare.
* class.c (finish_struct): Don't use TREE_NONLOCAL_FLAG.
(pushclass): Likewise. Use storetags to install tag declarations,
not pushtag.
(invalidate_class_lookup_cache): Don't use TREE_NONLOCAL_FLAG.
* decl.c (storetags): Make it global.
(push_class_binding): Set INHERITED_VALUE_BINDING_P for an
implicit typename declaration.
(pushtag): Tidy. Don't use TREE_NONLOCAL_FLAG.
* method.c (hack_identifier): Likewise.
* search.c (lookup_member): Likewise.
From-SVN: r26491
* tree.c (valid_machine_attribute): If we're modifying the
FUNCTION_TYPE within a POINTER_TYPE and we don't get a decl,
update the POINTER_TYPE.
From-SVN: r26489
* decl.c (warn_about_implicit_typename_lookup): New function.
(lookup_name_real): Use it. Rework handling of implicit typename
extension.
From-SVN: r26487
* configure.in (checkfuncs): Check for sbrk.
* config.in: Rebuilt.
* configure: Likewise.
* xmalloc.c: Use HAVE_SBRK instead of the host specific definitions.
From-SVN: r26480
* cp-tree.h (lang_type): Add documentation.
* decl2.c (handle_class_head): Create template declarations here,
as appropriate.
* parse.y (class_head): Return whether or not we entered a new
scope, as well as the type named.
(named_class_head): Likewise.
(named_complex_class_head_sans_basetype): Likewise.
(structsp): Adjust accordingly. Pop scope when required.
* parse.c: Regenerated.
* pt.c (check_default_tmpl_args): Robustify.
(redeclare_class_template): Likewise.
(instantiate_class_template): An instantiation of an
anonymous union is itself an anonymous union.
* semantics.c (begin_class_definition): Don't create template
declarations here.
From-SVN: r26475
* parse.y (after_type_declarator_intern): New nonterminal.
(after_type_declarator): Use it.
(direct_after_type_declarator): Likewise. Move above
nonnested_type to fix reduce/reduce conflict resolution.
(declmods): Reducing from just 'attributes' has EMPTY precedence.
* Makefile.in (CONFLICTS): Update.
* decl.c (define_label): Downgrade error for jumping over a
non-POD decl to pedwarn.
From-SVN: r26472
* i386.md (ashlsi patterns): Call output_ashl instead of output_ashlsi3.
(ashlqi): Use expander, separate LEA and SAL / ADD patterns; call
output_ashl.
(ashlhi): Likewise.
* i386.h (output_ashl): Renamed from output_ashlsi3.
* i386.c (output_ashl): Likewise; support HImode and QImode operands
as well.
Co-Authored-By: Jeffrey A Law <law@cygnus.com>
From-SVN: r26467
* i386.md (notsi, nothi, xorsi, xorhi, and xorqi patterns): Call
memory_address_displacement_length instead of memory_address_length.
* i386.c (memory_address_info): Renamed from memory_address_length.
Accept new argument DISP_LENGTH. All callers changed. If DISP_LENGTH,
then return the displacement length. Else return length of the
entire memory address. Handle MULT case correctly.
* i386.h (memory_address_info): Update declaration.
* i386.md (memory_bit_test): Fix paren error.
Co-Authored-By: Jeffrey A Law <law@cygnus.com>
From-SVN: r26465
1999-04-14 23:26 -0400 Zack Weinberg <zack@rabi.columbia.edu>
* graph.c (node_data): Return void. Ignore result of
print_rtl_single. Change caller to match.
* integrate.c (subst_constants): Initialize op0_mode to an
invalid mode, and abort before use if it's still invalid.
(Can only happen if the RTX_CLASS, RTX_FORMAT tables are corrupted.)
* objc/objc-act.c (get_objc_string_decl,
build_selector_translation_table, generate_protocol_list,
synth_id_with_class_suffix, build_keyword_selector,
build_selector_expr, gen_declarator): Abort when the tree
structure is corrupted.
From-SVN: r26463
* cp-tree.h (popclass): Change declaration.
(pop_nested_class): Likewise.
(poplevel_class): Remove declaration.
* call.c (convert_default_argument): Pass no arguments to
popclass.
* class.c (finish_struct_1): Likewise.
(finish_struct): Likewise.
(popclass): Remove argument. Simplify code accordingly.
(pop_nested_class): Likewise.
* decl.c (poplevel_class): Declare it here, and make it static.
(poplevel): Handle class scopes.
(pop_level_class): Don't take an rgument. Simplify.
(pop_everything): Pass no arguments to pop_nested_class.
(cp_finish_decl): Pass no arguments to popclass.
(grokdeclarator): Pass no arguments to pop_nested_class.
(finish_function): Likewise.
* decl2.c (grokfield): Likewise.
(pop_scope): Pass no arguments to popclass.
* lex.c (do_pending_defargs): Pass no arguments to pop_nested_class.
* pt.c (instantiate_class_template): Move call to pushclass, and
document. Pass no arguments to popclass.
(regenerate_decl_from_template): Likewise.
From-SVN: r26454
* java/net/natInetAddress.cc (lookup): On glibc2.0 systems, make
buffer larger to work around bug.
From Bryce McKinlay <bryce@albatross.co.nz>.
From-SVN: r26447
* alpha.c (aligned_memory_operand): Recognize the output of
LEGITIMIZE_RELOAD_ADDRESS. Examine reg_equiv_memory_loc in
the event of a pseudo.
(unaligned_memory_operand): Likewise. Don't otherwise accept
completely illegal addresses.
(normal_memory_operand): Likewise. Handle subregs of pseudos.
(get_aligned_mem): Revert previous change. Abort if we don't have a
mem. During reload, call find_replacement on all illegal memories.
(get_unaligned_address): Likewise.
* alpha.h (SECONDARY_INPUT_RELOAD_CLASS): Use !aligned_memory_operand
instead of unaligned_memory_operand.
* alpha.md: Revert extra argument to get_aligned_mem.
(reload_inqi): Use any_memory_operand in constraints. Abort if
we're not given some sort of mem.
(reload_inhi): Likewise.
(reload_outqi, reload_outhi): Likewise.
From-SVN: r26445
1999-04-14 12:37 -0400 Zack Weinberg <zack@rabi.columbia.edu>
* cpperror.c, cppexp.c, cpplib.c: Never call abort.
* cpphash.c: Only call abort when we detect corruption of the
malloc arena.
* cppmain.c: Don't define fatal or fancy_abort.
From-SVN: r26442