aboutsummaryrefslogtreecommitdiff
path: root/gcc/objc
AgeCommit message (Collapse)AuthorFilesLines
2007-01-23re PR objc/27438 ([unit-at-a-time] '_OBJC_INSTANCE_0' defined but not used ↵Andrew Pinski2-0/+7
warning) 2007-01-23 Andrew Pinski <pinskia@gmail.com> PR objc/27438 * objc-act.c (objc_add_static_instance): Mark the decl as TREE_USED. 2007-01-23 Andrew Pinski <pinskia@gmail.com> PR objc/27438 * objc.dg/const-str-12.m: New test. From-SVN: r121102
2007-01-20re PR objc/30479 (Precompiled headers don't seem to work with GNU ObjC)Andrew Pinski2-3/+11
2007-01-20 Andrew Pinski <pinskia@gmail.com> PR objc/30479 * objc-act.c (hash_interface): Use IDENTIFIER_HASH_VALUE instead of htab_hash_pointer. (lookup_interface): Likewise. (add_class): Likewise. 2007-01-20 Andrew Pinski <pinskia@gmail.com> PR objc/30479 * objc.dg/pch: New directory. * objc.dg/pch/pch.exp: New file. * objc.dg/pch/interface-1.m: New test. * objc.dg/pch/interface-1.hs: New include file. * lib/objc.exp (objc_target_compile): Add "-x objective-c-header" in front of the sources if this is a precompiled header being compiled. From-SVN: r121024
2007-01-11configure.ac (strict1_warn): Rename to strict_warn.Paolo Bonzini1-3/+0
2007-01-11 Paolo Bonzini <bonzini@gnu.org> * configure.ac (strict1_warn): Rename to strict_warn. (WERROR, --enable-werror, symlink hacks, stage1_cflags, cc_set_by_configure, quoted_cc_set_by_configure, stage_prefix_set_by_configure, quoted_stage_prefix_set_by_configure, all_boot_languages, all_stagestuff): Remove. (target_list): Remove bootstrap targets. * Makefile.in (quickstrap): Unconditionally make a synonym of all. (BOOT_LANGUAGES, STAGE1_CFLAGS, STAGE1_CHECKING, REMAKEFLAGS, FLAGS_TO_PASS, PREPEND_DOTDOT_TO_RELATIVE_PATHS, SUBDIR_FLAGS_TO_PASS, WERROR_FLAGS, STRICT2_WARN, LANG_STAGESTUFF, VOL_FILES, POSTSTAGE1_FLAGS_TO_PASS, STAGE2_FLAGS_TO_PASS, STAGEPROFILE_FLAGS_TO_PASS, STAGEFEEDBACK_FLAGS_TO_PASS, stage1_build, stage1_copy, stage2_build, stage2_copy, stageprofile_build, stageprofile_copy, stage3_build, stage3_copy, stagefeedback_build, stagefeedback_copy, stage4_build, clean_s1, clean_sw, bootstrap, bootstrap-lean, bootstrap2, bootstrap2-lean, bootstrap3, bootstrap3-lean, bootstrap4, bootstrap4-lean, unstage1, unstage2, unstage3, unstage4, unstageprofile, unstagefeedback, restage, restage2, restage3, restage4, restageprofile, restagefeedback, bubbleestrap, cleanstrap, unstrap, restrap, *compare, *compare3, *compare4, *compare-lean, *compare3-lean, *compare4-lean, stage1-start, stage1, stage2-start, stage2, stage3-start, stage3, stage4-start, stage4, stageprofile-start, stageprofile, stagefeedback-start, stagefeedback, risky-stage1, risky-stage2, risky-stage3, risky-stage4): Remove. (ORDINARY_FLAGS_TO_PASS): Rename to FLAGS_TO_PASS. (STAGECOPYSTUFF, STAGEMOVESTUFF): Consolidate into MOSTLYCLEANFILES. (mostlyclean): Adjust. (clean, distclean): Don't mention bootstrap stuff. * configure: Regenerate. * ada/config-lang.in, cp/config-lang.in, forttran/config-lang.in, java/config-lang.in, objc/config-lang.in, objcp/config-lang.in, treelang/config-lang.in (stagestuff): Remove. * doc/sourcebuild.texi (stage1, stage2, stage3, stage4, stageprofile, stagefeedback, stagestuff): Remove mention. From-SVN: r120670
2007-01-02c-common.c (c_common_nodes_and_builtins): Since variants of void_type_node ↵Douglas Gregor2-1/+21
get built before it is given a name... 2007-01-02 Douglas Gregor <doug.gregor@gmail.com> * c-common.c(c_common_nodes_and_builtins): Since variants of void_type_node get built before it is given a name, we need to give those variants the name, too. (complete_array_type): We need to work with the canonical main type of the array, from which we will build the qualified version. * params.def (PARAM_VERIFY_CANONICAL_TYPES): New. * print-tree.c (print_node): Display canonical type information for each type. * stor-layout.c (layout_type): When we don't know the alignment of a type for which we're building an array, we end up guessing wrong, so make the type require structural equality. * tree.c (make_node_stat): When we build a new type, it is its own canonical type. (build_type_attribute_qual_variant): When building an attribute variant, its canonical type is the non-attribute variant. However, if the attributes are target-dependent and they differ, we need to use structural equality checks for this type. (build_qualified_type): A qualified type is not equivalent to its unqualified variant; set the canonical type appropriately. (build_distinct_type_copy): When building a distinct type from another type, the new type is its own canonical type. (build_variant_type_copy): When building a new type variant, we assume that it is equivalent to the original type. (build_pointer_type_for_mode): When building a pointer type, also build a canonical type pointer. (build_reference_type_for_mode): When building a reference type, also build a canonical type reference. (build_index_type): When we can't hash an index type (e.g., because its maximum value is negative), the index type requires structural equality tests. (build_array_type): Build the canonical form of an array type. (build_function_type): Function types require structural equality, because they contain default arguments, attributes, etc. (build_method_type_directly): Ditto for method types. (build_offset_type): Build the canonical offset type. (build_complex_type): Build the canonical vector type. (make_vector_type): Build the canonical vector type. * tree.h (TYPE_CANONICAL): New. (TYPE_STRUCTURAL_EQUALITY_P): New. (SET_TYPE_STRUCTURAL_EQUALITY): New. (struct tree_type): Added "canonical" field. * params.h (VERIFY_CANONICAL_TYPES): New. * doc/c-tree.texi (TYPE_CANONICAL): Document. (TYPE_STRUCTURAL_EQUALITY_P): Document. (SET_TYPE_STRUCTURAL_EQUALITY): Document. * doc/invoke.texi (verify-canonical-types): Document --param parameter for verifying canonical types. 2007-01-02 Douglas Gregor <doug.gregor@gmail.com> * typeck.c (structural_comptypes): Renamed from "comptypes". (comptypes): Use canonical type information to perform fast type comparison. When VERIFY_CANONICAL_TYPES, verify that the canonical type comparison returns the same results as we would see from the current, structural check. Support COMPARE_STRUCTURAL when we need structural checks. * decl.c (typename_compare): Fix comment. (build_typename_type): TYPENAME_TYPE nodes require structural equality checks, because they resolve different based on the current class type. (make_unbound_class_template): UNBOUND_CLASS_TEMPLATE nodes require structural equality checks (for now). (build_ptrmemfunc_type): Build the canonical pointer to member function type. (compute_array_index_type): Whenever we build a new index type to represent the size of an array in a template, we need to mark this index type as requiring structural equality. This goes for arrays with value-dependent sizes with the current ABI, or all arrays with ABI-1. * tree.c (cplus_array_hash): New. (struct cplus_array_info): New. (cplus_array_compare): New. (cplus_array_htab): New. (build_cplus_array_type_1): Use a hash table to cache the array types we build. Build the canonical array type for each array type. (cp_build_qualified_type_real): When building a cv-qualified array type, use the hash table of array types and build canonical array types as necessary. (bind_template_template_parm): BOUND_TEMPLATE_TEMPLATE_PARM nodes use structural equality (for now). * cp-tree.h (COMPARE_STRUCTURAL): New. * pt.c (canonical_template_parms): New. (canonical_type_parameter): New. (process_template_parm): Find the canonical type parameter. (lookup_template_class): When we have named the primary template type, set the canonical type for our template class to the primary template type. If any of the template arguments need structural equality checks, the template class needs structural equality checks. (tsubst): When reducing the level of a template template parameter, we require structural equality tests for the resulting parameter because its template parameters have not had their types canonicalized. When reducing a template type parameter, find the canonical reduced type parameter. (any_template_arguments_need_structural_equality_p): New. 2007-01-02 Douglas Gregor <doug.gregor@gmail.com> * objc-act.c (objc_build_volatilized_type): Keep track of canonical types. (objc_get_protocol_qualified_type): Ditto. From-SVN: r120341
2006-11-02objc-act.c (objc_finish_file): Remove ifdef clause for OBJCPLUS and content ↵Andreas Tobler2-4/+5
where we called cp_finish_file. 2006-11-02 Andreas Tobler <a.tobler@schweiz.org> * objc-act.c (objc_finish_file): Remove ifdef clause for OBJCPLUS and content where we called cp_finish_file. From-SVN: r118424
2006-10-23decl.c: Include langhooks.h.Rafael Ávila de Espíndola2-50/+65
* gcc/java/decl.c: Include langhooks.h. (builtin_function): Remove. (java_init_decl_processing): Replace calls to builtin_function with add_builtin_function. * gcc/java/Make-lang.in (jc1$(exeext)): Depend on and link with attribs.o. (java/decl.o): Depend on langhooks.h. * gcc/java/java-tree.h (builtin_function): Remove. * gcc/tree.c (local_define_builtin): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/objc/objc-act.c (synth_module_prologue): Replace calls to builtin_function with add_builtin_function. (build_next_objc_exception_stuff): Replace calls to builtin_function with add_builtin_function. (build_objc_exception_stuff): Replace calls to builtin_function with add_builtin_function. * gcc/objcp/objcp-decl.h (objcp_builtin_function): Remove. * gcc/cp/decl.c (builtin_function_1): Move common code to add_builtin_function. (builtin_function): Rename to cxx_builtin_function. Change the signature. * gcc/cp/call.c: Include langhooks.h. (build_java_interface_fn_ref): Replace calls to builtin_function with add_builtin_function. * gcc/cp/Make-lang.in (cp/call.o): Depend on langhooks.h. * gcc/cp/cp-objcp-common.h (LANG_HOOKS_BUILTIN_FUNCTION): Define as cxx_builtin_function. * gcc/cp/cp-tree.h (builtin_function): Rename to cxx_builtin_function. Change the signature. * gcc/c-objc-common.h (LANG_HOOKS_BUILTIN_FUNCTION): Define as c_builtin_function. * gcc/c-tree.h (builtin_function): Rename to c_builtin_function. Change the signature. * gcc/ada/utils.c (builtin_function): Rename to gnat_builtin_function. Move common code to add_builtin_function. * gcc/ada/misc.c (LANG_HOOKS_BUILTIN_FUNCTION): Define as gnat_builtin_function. * gcc/ada/gigi.h (builtin_function): Rename to gnat_builtin_function. Change the signature. * gcc/c-decl.c (builtin_function): Rename to c_builtin_function. Move common code to add_builtin_function. * gcc/fortran/Make-lang.in (f951$(exeext)): Depend on and link with attribs.o. * gcc/fortran/trans.h (builtin_function): Rename to gfc_builtin_function. Change the signature. * gcc/fortran/f95-lang.c (LANG_HOOKS_BUILTIN_FUNCTION): Define as gfc_builtin_function. (builtin_function): Rename to gfc_builtin_function. Move common code to builtin_function. (gfc_define_builtin): Replace calls to builtin_function with gfc_define_builtin. * gcc/langhooks.c (add_builtin_function): New function. (lhd_builtin_function): New function. * gcc/langhooks.h (struct lang_hooks): Change the signature of builtin_function. (add_builtin_function): New function. * gcc/treelang/treetree.c (builtin_function): Remove. * gcc/tree-ssa-loop-prefetch.c (tree_ssa_prefetch_arrays): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/c-common.c (decl_builtin_1): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/alpha/alpha.c (alpha_init_builtins): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/frv/frv.c (def_builtin): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/s390/s390.c (s390_init_builtins): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/sparc/sparc.c (def_builtin): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/i386/i386.c (def_builtin): Replace calls to lang_hooks.builtin_function with add_builtin_function. (def_builtin): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/sh/sh.c (sh_media_init_builtins): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/c4x/c4x.c (c4x_init_builtins): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/stormy16/stormy16.c (xstormy16_init_builtins): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/iq2000/iq2000.c (def_builtin): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/ia64/ia64.c (def_builtin): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/rs6000/rs6000.c (def_builtin): Replace calls to lang_hooks.builtin_function with add_builtin_function. (altivec_init_builtins): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/arm/arm.c (def_mbuiltin): Replace calls to lang_hooks.builtin_function with add_builtin_function. (arm_init_tls_builtins): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/mips/mips.c (mips_init_builtins): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/config/bfin/bfin.c (def_builtin): Replace calls to lang_hooks.builtin_function with add_builtin_function. * gcc/langhooks-def.h (lhd_builtin_function): New function. (LANG_HOOKS_BUILTIN_FUNCTION): Define as lhd_builtin_function. From-SVN: r117981
2006-10-10--(top level)--------------------------------------------Brooks Moses2-1/+6
2006-10-10 Brooks Moses <bmoses@stanford.edu> * Makefile.def: Added pdf target handling. * Makefile.tpl: Added pdf target handling. * Makefile.in: Regenerated. ---fixincludes-------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Makefile.in: Added empty "pdf" target. ---gcc---------------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * configure.ac: Added pdf to "Make-hooks" * Makefile.in: Added TEXI2PDF definition, and various pdf-file targets and *.pdf file patterns in cleanup targets. * configure: Regenerated. ---gcc/cp------------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Make-lang.in: Added "c++.pdf" target support. ---gcc/fortran-------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Make-lang.in: Added "fortran.pdf", "gfortran.pdf" target support. ---gcc/java----------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Make-lang.in: Added "java.pdf", "gcj.pdf" target support. ---gcc/objc----------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Make-lang.in: Added empty "objc.pdf" target. ---gcc/objcp---------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Make-lang.in: Added empty "obj-c++.pdf" target. ---gcc/treelang------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Make-lang.in: Added "treelang.pdf" target support. ---gnattools---------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Makefile.in: Added empty "pdf" target. ---libcpp------------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Makefile.in: Added empty "pdf" target. ---libdecnumber------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Makefile.in: Added empty "pdf" target. ---libiberty---------------------------------------------- 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Makefile.in: Added "pdf", "libiberty.pdf" target support. * testsuite/Makefile.in: Added empty "pdf" target. ---libobjc------------------------------------------------ 2006-10-10 Brooks Moses <bmoses@stanford.edu> * Makefile.in: Added empty "pdf" target. From-SVN: r117618
2006-09-26re PR objc/29195 (ICE in expand_expr_real_1, at expr.c:6932)Andrew Pinski2-2/+19
2006-09-26 Andrew Pinski <pinskia@physics.uc.edu> PR objc/29195 * objc-act.c (objc_push_parm): If we change the type of the decl, relayout the decl. 2006-09-26 Andrew Pinski <pinskia@physics.uc.edu> PR objc/29195 * objc/compile/method-1.m: New test. From-SVN: r117229
2006-09-19tm.texi (OBJC_JBLEN): Describe.Eric Christopher2-66/+69
2006-09-19 Eric Christopher <echristo@apple.com> * doc/tm.texi (OBJC_JBLEN): Describe. * config/i386/darwin.h (OBJC_JBLEN): Define. * config/rs6000/darwin.h: Ditto. 2006-09-19 Eric Christopher <echristo@apple.com> * objc-act.c (JBLEN): Rename to OBJC_JBLEN, default to something innocuous. (build_next_objc_exception_stuff): Rename JBLEN. From-SVN: r117066
2006-07-28Makefile.in: Use $(HEADER_H) instead of header.h in dependencies and ↵Volker Reichelt2-4/+9
variables used in... * Makefile.in: Use $(HEADER_H) instead of header.h in dependencies and variables used in dependencies. ada/ cp/ fortran/ java/ objc/ objcp/ treelang/ * Make-lang.in: Use $(HEADER_H) instead of header.h in dependencies. From-SVN: r115802
2006-07-19re PR objc++/28434 (ICE with invalid protocol)Volker Reichelt2-4/+9
PR obj-c++/28434 * objc-act.c (lookup_and_install_protocols): Skip error_mark_nodes. * obj-c++.dg/proto-error-1.mm: New test. From-SVN: r115599
2006-06-06* objc-act.c: Remove prototype for objc_build_volatilized_type.Mike Stump2-1/+4
From-SVN: r114427
2006-05-28Fix whitespacingMike Stump1-3/+5
From-SVN: r114164
2006-05-24* objc-act.c (build_next_objc_exception_stuff): Use JBLEN instead of _JBLEN.Mike Stump2-7/+11
From-SVN: r114053
2006-05-05re PR objc/27240 (ICE with invalid fields)Volker Reichelt2-0/+8
PR objc/27240 * objc-act.c (objc_is_public): Return early on invalid type. * objc.dg/member-1.m: New test. From-SVN: r113559
2006-03-08re PR bootstrap/26500 (info/gfortran.info is no longer being installed)Paolo Bonzini1-0/+3
2006-03-08 Paolo Bonzini <bonzini@gnu.org> PR bootstrap/26500 * Makefile.in (dvi, html, install-info): Invoke the corresponding language hook targets. * ada/Make-lang.in, cp/Make-lang.in, objc/Make-lang.in, objcp/Make-lang.in: Create stub rules for dvi, html, install-info if language hook targets were missing. From-SVN: r111845
2006-03-02Fixed a couple of objctective-c bugs.Fariborz Jahanian2-3/+12
Oked by Mike Stump. From-SVN: r111642
2006-02-20Make-lang.in (OBJC): RemoveRafael Espindola2-3/+8
* gcc/objc/Make-lang.in (OBJC): Remove (OBJECTIVE-C): Remove (objective-c): Remove (.PHONY): Remove objective-c and ObjC * gcc/objcp/Make-lang.in (OBJ-C++): Remove (.PHONY): Remove Obj-c++ and obj-C++. Add obj-c++ * gcc/cp/Make-lang.in (C++): Remove (.PHONY): Remove C++ * gcc/ada/Make-lang.in (Ada): Remove (.PHONY): Remove Ada * gcc/fortran/Make-lang.in (FORTRAN): Remove (.PHONY): Remove F95 and f95. Add fortran * gcc/treelang/Make-lang.in (.phony): Remove TREELANG (TREELANG): Remove * gcc/Makefile.in (C): Remove (PROTO): Remove (.PHONY): Remove C and PROTO From-SVN: r111307
2006-02-20configure.ac (target_list): Add install-info, dvi, html.Paolo Bonzini1-1/+1
2006-02-20 Paolo Bonzini <bonzini@gnu.org> * configure.ac (target_list): Add install-info, dvi, html. * configure: Regenerate. * ada/Make-lang.in, cp/Make-lang.in, fortran/Make-lang.in, java/Make-lang.in, objc/Make-lang.in, objcp/Make-lang.in, treelang/Make-lang.in: Do not use double-colon rules. From-SVN: r111304
2006-01-31tree-vrp.c: Use XNEW/XCNEW allocation wrappers.Marcin Dalecki1-2/+2
2006-01-31 Marcin Dalecki <martin@dalecki.de> * tree-vrp.c: Use XNEW/XCNEW allocation wrappers. * regrename.c: Ditto. * tree-ssa-loop-im.c: Ditto. * tree-dump.c: Ditto. * tree-complex.c: Ditto. * genrecog.c: Ditto. * tree-ssa-threadupdate.c: Ditto. * tracer.c: Ditto. * java/class.c: Ditto. * java/jcf-parse.c: Ditto. * java/resource.c: Ditto. * java/except.c: Ditto. * java/jvspec.c: Ditto. * java/jcf-write.c: Ditto. * java/jcf-path.c: Ditto. * java/gjavah.c: Ditto. * java/zextract.c: Ditto. * java/jcf-io.c: Ditto. * java/jcf.h: Ditto. * java/buffer.c: Ditto. * java/lang.c: Ditto. * java/parse-scan.y: Ditto. * java/lex.c: Ditto. * java/lex.h: Ditto. * cfgloopmanip.c: Ditto. * postreload-gcse.c: Ditto. * tree-ssa-loop-manip.c: Ditto. * postreload.c: Ditto. * tree-ssa-loop-ch.c: Ditto. * loop.c: Ditto. * ipa-cp.c: Ditto. * cppspec.c: Ditto. * diagnostic.c: Ditto. * final.c: Ditto. * genoutput.c: Ditto. * gcc.c: Ditto. * cfghooks.c: Ditto. * cfgloopanal.c: Ditto. * objc/objc-act.c: Ditto. * gcov.c: Ditto. * genextract.c: Ditto. * genautomata.c: Ditto. * pretty-print.c: Ditto. * genemit.c: Ditto. * cgraphunit.c: Ditto. * flow.c: Ditto. * df-scan.c: Ditto. * haifa-sched.c: Ditto. * dominance.c: Ditto. * dbxout.c: Ditto. * tree-ssa-loop-ivopts.c: Ditto. * df-core.c: Ditto. * mode-switching.c: Ditto. * modulo-sched.c: Ditto. * graph.c: Ditto. * ipa-pure-const.c: Ditto. * cse.c: Ditto. * fix-header.c: Ditto. * web.c: Ditto. * tree-stdarg.c: Ditto. * ipa-utils.c: Ditto. * loop-init.c: Ditto. * ipa-inline.c: Ditto. * cfganal.c: Ditto. * global.c: Ditto. * alloc-pool.c: Ditto. * dwarf2out.c: Ditto. * opts.c: Ditto. * genattrtab.c: Ditto. * tree-ssa-loop-ivcanon.c: Ditto. * predict.c: Ditto. * timevar.c: Ditto. * lcm.c: Ditto. * fortran/gfortranspec.c: Ditto. * regmove.c: Ditto. * local-alloc.c: Ditto. * langhooks.c: Ditto. * function.c: Ditto. * tree-vectorizer.c: Ditto. * gcse.c: Ditto. * ipa-type-escape.c: Ditto. * alias.c: Ditto. * tree-if-conv.c: Ditto. * profile.c: Ditto. * ipa.c: Ditto. * tree-data-ref.c: Ditto. * loop-unroll.c: Ditto. * treelang/treetree.c: Ditto. * calls.c: Ditto. * bt-load.c: Ditto. * ggc-common.c: Ditto. * except.c: Ditto. * coverage.c: Ditto. * cselib.c: Ditto. * tree-cfgcleanup.c: Ditto. * tree-ssa-pre.c: Ditto. * cfgcleanup.c: Ditto. * loop-invariant.c: Ditto. * loop-iv.c: Ditto. * ipa-prop.c: Ditto. * print-tree.c: Ditto. * conflict.c: Ditto. * ggc-page.c: Ditto. * sched-deps.c: Ditto. * regclass.c: Ditto. * tree-object-size.c: Ditto. * combine.c: Ditto. * bb-reorder.c: Ditto. * resource.c: Ditto. * var-tracking.c: Ditto. * cfgloop.c: Ditto. * df-problems.c: Ditto. * reg-stack.c: Ditto. * tlink.c: Ditto. * gccspec.c: Ditto. * sched-rgn.c: Ditto. * tree-ssa-structalias.c: Ditto. * tree-ssa-reassoc.c: Ditto. * config/darwin-c.c: Ditto. * config/darwin.c: Ditto. * config/arm/arm.c: Ditto. * cfgrtl.c: Ditto. * collect2.c: Ditto. * reload1.c: Ditto. From-SVN: r110446
2005-12-16re PR objc/25360 (Complex types are not encoded)Andrew Pinski2-0/+12
2005-12-14 Andrew Pinski <pinskia@physics.uc.edu> PR objc/25360 * objc/objc-act.c (encode_type): Encode Complex types as 'j' followed by the inner type. 2005-12-14 Andrew Pinski <pinskia@physics.uc.edu> PR objc/25360 * objc/objc-api.c (_C_COMPLEX): New define. * encoding.c (objc_sizeof_type): Handle _C_Complex. (objc_alignof_type): Likewise. (objc_skip_typespec): Likewise. From-SVN: r108675
2005-12-12re PR objc/25348 (ICE encoding zero sized struct array)Andrew Pinski2-3/+11
2005-12-12 Andrew Pinski <pinskia@physics.uc.edu> PR objc/25348 * objc-act.c (encode_array): Handle arrays to zero sized types. 2005-12-12 Andrew Pinski <pinskia@physics.uc.edu> PR objc/25348 * objc.dg/encode-9.m: New test. From-SVN: r108432
2005-12-07sourcebuild.texi (all.build, [...]): Remove.Rafael Ávila de Espíndola2-5/+6
gcc/ * doc/sourcebuild.texi (all.build, install-normal): Remove. * configure.ac: Remove all.build and install-normal from target_list * configure: Regenerate. * Makefile.in (install): Don't depend on install-normal. gcc/java/ * Make-lang.in (java.all.build, java.install-normal): Remove. gcc/objc/ * Make-lang.in (objc.all.build, objc.install-normal): Remove. gcc/objcp/ * Make-lang.in (obj-c++.all.build, obj-c++.install-normal): Remove. gcc/cp/ * Make-lang.in (c++.all.build, c++.install-normal): Remove. gcc/ada/ * Make-lang.in (ada.install-normal): Remove. gcc/fortran/ * Make-lang.in (fortran.all.build, fortran.install-normal): Remove. gcc/treelang/ * Make-lang.in (treelang.all.build, treelang.install-normal): Remove. From-SVN: r108158
2005-12-07gty.texi: Remove instructions for adding a dependency on s-gtype.Alan Modra2-3/+4
gcc/ * doc/gty.texi: Remove instructions for adding a dependency on s-gtype. * Makefile.in: Add code to compute some dependencies on s-gtype automatically. Remove the declaration of those dependencies. gcc/java/ * Make-lang.in: Remove all dependencies on s-gtype, except for gt-java-parse.h. gcc/objc/ * Make-lang.in: Remove all dependencies on s-gtype. gcc/objcp/ * Make-lang.in: Remove all dependencies on s-gtype. gcc/cp/ * Make-lang.in: Remove all dependencies on s-gtype. gcc/ada/ * Make-lang.in: Remove all dependencies on s-gtype. gcc/fortran/ * Make-lang.in: Remove all dependencies on s-gtype, except for gt-fortran-trans.h. gcc/treelang/ * Make-lang.in: Remove all dependencies on s-gtype. From-SVN: r108155
2005-12-03Fixup some spacingMike Stump1-4/+4
From-SVN: r107973
2005-12-02objc-act.c (objc_build_exc_ptr, [...]): Use buildN instead of build.Richard Guenther2-16/+24
2005-12-02 Richard Guenther <rguenther@suse.de> * objc-act.c (objc_build_exc_ptr, next_sjlj_build_enter_and_setjmp next_sjlj_build_exc_extract, next_sjlj_build_catch_list, next_sjlj_build_try_catch_finally, objc_begin_catch_clause, build_objc_method_call, objc_rewrite_function_call): Use buildN instead of build. From-SVN: r107902
2005-10-21Index: objc/ChangeLogGeoffrey Keating2-0/+22
2005-10-20 Geoffrey Keating <geoffk@apple.com> * objc-act.c (synth_module_prologue): Clear TREE_NOTHROW on objc_msgSend and like builtin functions. Index: testsuite/ChangeLog 2005-10-20 Geoffrey Keating <geoffk@apple.com> * obj-c++.dg/except-1.mm: New. From-SVN: r105704
2005-10-17objc-act.c (objc_build_component_ref): Adjust call to ↵Andreas Krebbel2-1/+6
finish_class_member_access_expr due to a changed prototype. 2005-10-17 Andreas Krebbel <krebbel1@de.ibm.com> * objc-act.c (objc_build_component_ref): Adjust call to finish_class_member_access_expr due to a changed prototype. From-SVN: r105503
2005-08-31re PR objc/23306 ([unit-at-a-time] objc exceptions (GNU runtime) don't work ↵Andrew Pinski2-59/+19
with unit-at-a-time) 2005-08-31 Andrew Pinski <pinskia@physics.uc.edu> PR objc/23306 * objc-act.c (generate_strings): Remove and move code to finish decl to ... (add_objc_string): here when creating a new string decl. (finish_objc): Don't call generate_strings. 2005-08-31 Andrew Pinski <pinskia@physics.uc.edu> PR objc/23306 * objc.dg/image-info.m: Remove "objc_module_info" check part of the scan-assmbler. From-SVN: r103713
2005-08-30re PR objc/23381 (Next runtime objc exceptions are broken)Andrew Pinski2-0/+7
2005-08-31 Andrew Pinski <pinskia@physics.uc.edu> PR objc/23381 * objc-act.c (next_sjlj_build_try_catch_finally): Set TREE_SIDE_EFFECTS on catch_seq after building it. From-SVN: r103658
2005-08-09part of PR objc/21992Andrew Pinski2-0/+7
2005-08-09 Andrew Pinski <pinskia@physics.uc.edu> part of PR objc/21992 * objc-act.c (handle_class_ref): The ref decl is always referenced. From-SVN: r102920
2005-07-20Make CONSTRUCTOR use VEC to store initializers.Giovanni Bajo2-1/+7
* c-common.c (complete_array_type): Update to cope with VEC in CONSTRUCTOR_ELTS. * c-pretty-print.c (pp_c_initializer_list): Use pp_c_constructor_elts. (pp_c_constructor_elts): New function. * c-pretty-print.h (pp_c_constructor_elts): Declare. * c-typeck.c (build_function_call, build_c_cast, digest_init, struct constructor_stack, struct initializer_stack, constructor_elements, push_init_level, pop_init_level, add_pending_init, find_init_member, output_init_element): Update to cope with VEC in CONSTRUCTOR_ELTS. * coverage.c (build_fn_info_value, build_ctr_info_value, build_gcov_info): Likewise. * expr.c (categorize_ctor_elements_1, store_constructor, expand_expr_real_1): Likewise. * fold-const.c (fold_ternary): Likewise. * gimplify.c (gimplify_init_ctor_preeval, zero_sized_field_decl, gimplify_init_constructor, gimplify_expr): Likewise. * tree-dump.c (dequeue_and_dump): Likewise. * tree-inline.c (copy_tree_r): Add code to duplicate a CONSTRUCTOR node. * tree-pretty-print.c (dump_generic_node): Update to cope with VEC in CONSTRUCTOR_ELTS. * tree-sra.c (generate_element_init_1): Likewise. * tree-ssa-ccp.c (fold_const_aggregate_ref): Likewise. * tree-ssa-operands.c (get_expr_operands): Likewise. * tree-vect-generic.c (expand_vector_piecewise): Likewise. * tree-vect-transform.c (vect_get_vec_def_for_operand): (get_initial_def_for_reduction): Likewise. * tree-vn.c (set_value_handle, get_value_handle): CONSTURCTOR uses value handle in annotations. * tree.c (tree_node_kind, tree_code_size, make_node_stat, tree_node_structure): Add support for constr_kind. (build_vector_from_ctor, build_constructor_single, build_constructor_from_list): New functions. (build_constructor): Update to take a VEC instead of a TREE_LIST. (simple_cst_equal, iterative_hash_expr, initializer_zerop, walk_tree): Update to cope with VEC in CONSTRUCTOR_ELTS. * tree.def (CONSTRUCTOR): Make it a tcc_exceptional node. * tree.h (FOR_EACH_CONSTRUCTOR_VALUE, FOR_EACH_CONSTRUCTOR_ELT, CONSTRUCTOR_APPEND_ELT): New macros. (struct constructor_elt, struct tree_constructor): New data types. (union tree_node): Add tree_constructor field. * treestruct.def: Define TS_CONSTRUCTOR. * varasm.c (const_hash_1, compare_constant, copy_constant, compute_reloc_for_constant, output_addressed_constants, initializer_constant_valid_p, output_constant, array_size_for_constructor, output_constructor): Update to cope with VEC in CONSTRUCTOR_ELTS. * vec.h (VEC_empty, VEC_copy): New macros. ada/ Make CONSTRUCTOR use VEC to store initializers. * decl.c (gnat_to_gnu_entity): Update to cope with VEC in CONSTRUCTOR_ELTS. * trans.c (extract_values): Likewise. * utils.c (convert, remove_conversions): Likewise. * utils2.c (contains_save_expr_p, build_binary_op, build_unary_op, gnat_build_constructor): Likewise. cp/ Make CONSTRUCTOR use VEC to store initializers. * call.c (convert_default_arg): Update call to digest_init. * class.c (dump_class_hierarchy, dump_array): Update to cope with VEC in CONSTRUCTOR_ELTS. * cp-tree.h (EMPTY_CONSTRUCTOR_P): Likewise. (finish_compound_literal, digest_init): Update declaration. * decl.c (struct reshape_iter): New data type. (reshape_init_array): Rename to... (reshape_init_array_1): Update to cope with VEC in CONSTRUCTOR_ELTS. (reshape_init): Rewrite from scratch. Split parts into... (reshape_init_array, reshape_init_vector, reshape_init_class, reshape_init_r): New functions. (check_initializer): Update call to reshape_init. Remove obsolete code. (initialize_artificial_var, cp_complete_array_type): Update to cope with VEC in CONSTRUCTOR_ELTS. * decl2.c (grokfield): Update calls to digest_init. (mark_vtable_entries): Update to cope with VEC in CONSTRUCTOR_ELTS. * error.c (dump_expr_init_vec): New function. (dump_expr): Use dump_expr_init_vec. * init.c (build_zero_init, build_vec_init): Update to cope with VEC in CONSTRUCTOR_ELTS. (expand_default_init): Update call to digest_init. * parser.c (cp_parser_postfix_expression): Use a VEC for the initializers. (cp_parser_initializer_list): Build a VEC of initializers. * pt.c (tsubst_copy, tsubst_copy_and_build): Update to cope with VEC in CONSTRUCTOR_ELTS. * rtti.c (tinfo_base_init, generic_initializer, ptr_initializer, ptm_initializer, class_initializer, get_pseudo_ti_init): Use build_constructor_from_list instead of build_constructor. * semantics.c (finish_compound_literal): Update call to digest_init. * tree.c (stabilize_init): Update to cope with VEC in CONSTRUCTOR_ELTS. * typeck.c (build_ptrmemfunc1): Likewise. * typeck2.c: (cxx_incomplete_type_error, split_nonconstant_init_1): Likewise. (store_init_value): Use build_constructor_from_list and update call to digest_init. (digest_init): Rewrite. (process_init_constructor): Rewrite from scratch. Split into... (process_init_constructor_array, picflag_from_initializer, process_init_constructor_record, process_init_constructor_union): New functions. (PICFLAG_ERRONEOUS, PICFLAG_NOT_ALL_CONSTANT, PICFLAG_NOT_ALL_SIMPLE): New macros. (build_functional_cast): Use build_constructor_from_list instead of build_constructor. fortran/ Make CONSTRUCTOR use VEC to store initializers. * trans-array.c (gfc_build_null_descriptor, gfc_trans_array_constructor_value, gfc_conv_array_initializer): Update to cope with VEC in CONSTRUCTOR_ELTS. * trans-common.c (create_common): Likewise. * trans-expr.c (gfc_conv_structure): Likewise. * trans-stmt.c (gfc_trans_character_select): Use build_constructor_from_list instead of build_constructor. java/ Make CONSTRUCTOR use VEC to store initializers. * check-init.c (check_init): Update to cope with VEC in CONSTRUCTOR_ELTS. * class.c (make_field_value, make_method_value, get_dispatch_table, make_class_data, emit_symbol_table, emit_catch_table, emit_assertion_table): Use build_constructor_from_list instead of build_constructor. * constants.c (build_constants_constructor): Likewise. * java-gimplify.c (java_gimplify_new_array_init): Update to cope with VEC in CONSTRUCTOR_ELTS. * java-tree.h (START_RECORD_CONSTRUCTOR, PUSH_SUPER_VALUE, PUSH_FIELD_VALUE, FINISH_RECORD_CONSTRUCTOR): Create a VEC instead of a TREE_LIST. * jcf-write.c (generate_bytecode_insns): Update to cope with VEC in CONSTRUCTOR_ELTS. * parse.y (build_new_array_init): Use build_constructor_from_list instead of build_constructor. (patch_new_array_init): Update to cope with VEC in CONSTRUCTOR_ELTS. (array_constructor_check_entry): Likewise. objc/ Make CONSTRUCTOR use VEC to store initializers. * objc-act.c (objc_build_constructor): Use build_constructor_from_list instead of build_constructor. testsuite/ Make CONSTRUCTOR use VEC to store initializers. * g++.dg/ext/complit3.C: Check for specific error messages. * g++.dg/init/brace2.C: Update error message. * g++.dg/warn/Wbraces2.C: Likewise. From-SVN: r102182
2005-07-08Makefile.in (TREE_H): Add treestruct.def.Daniel Berlin4-9/+49
2005-07-08 Daniel Berlin <dberlin@dberlin.org> * Makefile.in (TREE_H): Add treestruct.def. (c-decl.o): Add pointer-set.h * c-decl.c (diagnose_mismatched_decls): Don't attempt to look at visibility on regular DECL's. (merge_decls): Fix the copying of decl nodes of various types for the new structures. Don't update RTL, section name, weak status, etc, on DECL's without RTL. (grokdeclarator): DECL_ARG_TYPE_AS_WRITTEN is gone. Don't check volatile on non-variable types. (store_parm_decls_oldstyle): Use pointer_set instead of DECL_WEAK to check whether we have seen arguments. * c-objc-common.c (c_tree_printer): Reverse order of tests so that flag is checked before field (flag is common, field is not). * dwarf2out.c (decl_ultimate_origin): Only DECL's with TS_DECL_COMMON could have an origin. (add_location_or_const_value_attribute): Don't check section name on non-var/function decls. (dwarf2out_var_location): Reverse order of tests. * emit-rtl.c (set_reg_attrs_for_parm): DECL_CHECK is dead, replace with DECL_WRTL_CHECK. * expmed.c (make_tree): rtl is now in decl_with_rtl. * fold-const.c (fold_binary): Don't check weakness on non-var/function decls. (tree_expr_nonzero_p): Ditto. (fold_checksum_tree): Use tree_decl_extra as sizeof buffer. * ggc-page.c (extra_order_size_table): Add sizes for tree_decl_non_common, tree_parm_decl, tree_var_decl, and tree_field_decl. * gimplify.c (gimplify_bind_expr): Only set DECL_SEEN_IN_BIND_EXPR_P on VAR_DECL. * integrate.c (copy_decl_for_inlining): Don't set RTL on decl's without RTL. * langhooks-def.h (LANG_HOOK_INIT_TS): New. * langhooks.h (init_ts). New langhook. * passes.c (rest_of_decl_compilation): Reverse order of tests. * print-tree.c (print_node): Update to only print fields that exist in the structures the passed decl has. * toplev.c (wrapup_global_declarations): Don't reset DECL_DEFER_OUTPUT on DECL's that don't contain it. * tree-browser.c (browse_tree): DECL_ARG_TYPE_AS_WRITTEN removed. * tree-inline.c (remap_decl): Ditto. * tree-outof-ssa.c (create_temp): Reverse order of tests. * tree-pretty-print.c (print_declaration): Don't print DECL_REGISTER on things that don't contain it. * tree-vrp.c (expr_computes_nonzero): Don't check weakness on non-var/function decls. * tree.c (tree_contains_struct): New structure. (init_priority_for_decl): New hashtable. (tree_int_map): New structure. (tree_int_map_eq): New function. (tree_int_map_marked_p): Ditto. (tree_int_map_hash): Ditto. (tree_map): Move to tree.h. (tree_map_eq): Externalize. (tree_map_hash): Ditto. (tree_map_marked_p): Ditto. (init_ttree): Set up tree_contains_struct and call langhook. (decl_assembler_name): Use DECL_NON_COMMON_CHECK.. (tree_code_size): Update for new structures. (tree_node_structure): Update for new structures. (make_node_stat): Don't try to set DECL_IN_SYSTEM_HEADER on decls without the field. (copy_node_stat): Copy init priority. (build_decl_stat): Ditto for visibility. (ts_enum_names): New. (tree_contains_struct_check_failed): New function. (decl_init_priority_lookup): Ditto. (decl_init_priority_insert): Ditto. * treestruct.def: New file. * tree.h (CODE_CONTAINS_STRUCT): New macro. (CONTAINS_STRUCT_CHECK): Ditto. (tree_contains_struct_check_failed): New prototype. (DECL_CHECK): Removed. (DECL_MINIMAL_CHECK): New. (DECL_COMMON_CHECK): Ditto. (DECL_WRTL_CHECK): Ditto. (DECL_NON_COMMON_CHECK): Ditto. (DECL_WITH_VIS_CHECK): Ditto. (VAR_OR_FUNCTION_DECL_P): Ditto (struct tree_decl_minimal): New structure. (struct tree_decl_common): Ditto. (struct tree_decl_with_rtl): Ditto. (struct tree_decl_with_vis): Ditto. (struct tree_decl_non_common): Ditto. (struct tree_field_decl): Ditto. (struct tree_parm_decl): Ditto. (struct tree_var_decl): Ditto. (struct tree_function_decl): Ditto. (struct tree_const_decl): Ditto. (struct tree_result_decl): Ditto. (union tree_node): Add new structures. * var-tracking.c (track_expr_p): Reverse order of tests. * doc/c-tree.texi: Add documentation on DECL node internal structure. 2005-07-08 Daniel Berlin <dberlin@dberlin.org> * utils.c (create_param_decl): DECL_ARG_TYPE_AS_WRITTEN is removed. 2005-07-08 Daniel Berlin <dberlin@dberlin.org> * Make-lang.in: Add gt-cp-lang.h. (cp-lang.o): Ditto. * class.c (create_vtable_ptr): Stop setting DECL_ASSEMBLER_NAME on the field. * config-lang.in: Add cp-lang.c to gtfiles. * cp-lang.c: Include hashtab.h. (cp_init_ts): New function. (LANG_HOOK_INIT_TS): Use macro. (decl_shadowed_for_var_lookup): New function. (decl_shadowed_for_var_insert): Ditto. * cp-tree.h (THUNK_FUNCTION_CHECK): Use decl_common. (NON_THUNK_FUNCTION_CHECK): Ditto. (DECL_NAMESPACE_ASSOCIATIONS): Use decl_non_common. (DECL_INIT_PRIORITY): Ditto. (DECL_HAS_SHADOWED_FOR_VAR_P): Ditto. (DECL_SHADOWED_FOR_VAR): Use hashtable. (SET_DECL_SHADOWED_FOR_VAR): Ditto. * decl.c (duplicate_decls): Update for new/updated structures. (poplevel): Use SET_DECL_SHADOWED_FOR_VAR. * decl2.c (start_static_initialization_or_destruction): Deal with priority. * pt.c (tsubst_decl): Check TS_DECL_WRTL before doing SET_DECL_RTL. * tree.c (handle_init_priority_attribute): Handle priority. 2005-07-08 Daniel Berlin <dberlin@dberlin.org> * objc-act.c (objc_push_parm): DECL_ARG_TYPE_AS_WRITTEN is removed. * objc-act.h (KEYWORD_ARG_NAME): Use decl_non_common. (KEYWORD_KEY_NAME): Use decl_minimal. (METHOD_SEL_NAME): Ditto.. (METHOD_SEL_ARGS): Use decl_non_common. (METHOD_ADD_ARGS): Ditto. (METHOD_ADD_ARGS_ELLIPSIS_P): Use decl_common. (METHOD_DEFINITION): Ditto. (METHOD_ENCODING): Ditto. * objc-lang.c: (objc_init_ts): New function. 2005-07-08 Daniel Berlin <dberlin@dberlin.org> * trans-decl.c (create_function_arglist): DECL_ARG_TYPE_AS_WRITTEN is removed. From-SVN: r101799
2005-07-08objc-act.c (objc_build_struct): Pass in an actual @interface instead of its ↵Ziemowit Laski2-9/+35
name... [gcc/objc/ChangeLog] 2005-07-07 Ziemowit Laski <zlaski@apple.com> * objc-act.c (objc_build_struct): Pass in an actual @interface instead of its name, and annotate the struct created (and all existing variants thereof) with the @interface. (objc_compare_types): Treat forward-declared ObjC classes as stand-alone (root) classes for purposes of type comparisons. (build_private_template): Move some code to objc_build_struct(). [gcc/testsuite/ChangeLog] 2005-07-07 Ziemowit Laski <zlaski@apple.com> * obj-c++.dg/proto-lossage-6.mm: New. * objc.dg/proto-lossage-6.m: New. From-SVN: r101750
2005-07-07re PR objc/22274 (string[1-4].m, const-str-5.m fails with the gnu runtime)Ziemowit Laski2-1/+7
/objc/ChangeLog] 2005-07-07 Ziemowit Laski <zlaski@apple.com> PR objc/22274 * objc-act.c (objc_build_string_object): For GNU-style constants, use the @interface type rather than the built-in type. [gcc/testsuite/ChangeLog] 2005-07-07 Ziemowit Laski <zlaski@apple.com> PR objc/22274 * obj-c++.dg/gnu-runtime-[1-2].mm: New. * objc.dg/gnu-runtime-2.m: New. From-SVN: r101686
2005-07-03Make-lang.in (cc1plus-checksum.c): Use build/genchecksum$(build_exeext), not ↵Kazu Hirata2-2/+7
build/genchecksum$(exeext). objc/ * Make-lang.in (cc1plus-checksum.c): Use build/genchecksum$(build_exeext), not build/genchecksum$(exeext). objcp/ * Make-lang.in (cc1plus-checksum.c): Use build/genchecksum$(build_exeext), not build/genchecksum$(exeext). From-SVN: r101553
2005-07-02c.opt, [...]: Remove "." from end of help texts.Joseph Myers2-7/+11
* c.opt, common.opt, config/bfin/bfin.opt, config/pa/pa.opt, config/rs6000/rs6000.opt, params.def: Remove "." from end of help texts. * config/avr/avr.c: Do not use '`' as left quote. * config/rs6000/rs6000.c, config/s390/s390.c, opts.c, tree.c: Remove "." from end of diagnostics. Make diagnostics start with lowercase letter. cp: * name-lookup.c, parser.c: Use %q, %< and %> to quote in diagnostics. fortran: * lang.opt: Remove "." from end of help texts. objc: * objc-act.c: Use %q to quote in diagnostics. From-SVN: r101533
2005-07-02toplev.c (default_tree_printer): Handle setting location with '+' flag.Joseph Myers2-6/+11
2005-07-02 Zack Weinberg <zack@codesourcery.com> Joseph S. Myers <joseph@codesourcery.com> * toplev.c (default_tree_printer): Handle setting location with '+' flag. * c-objc.common.c (c_tree_printer): Likewise. * c-format.c (gcc_diag_flag_specs): Add '+'. (gcc_cdiag_char_table): Allow '+' flag for tree formats. (format_types_orig): Allow '+' flag for gcc_diag and gcc_cdiag formats. * c-common.c, c-decl.c, c-objc-common.c, c-pragma.c, config/arm/pe.c, config/i386/winnt.c, config/ia64/ia64.c, config/mcore/mcore.c, config/sh/symbian.c, config/sol2.c, config/v850/v850.c, function.c, stor-layout.c, toplev.c, tree-inline.c, tree-optimize.c, tree.c, varasm.c: Use '+' flag instead of %J or %H. Use 'q' flag for quoting. Avoid '.' at end of diagnostics. Use %q+D not %s for a decl. Do not pass excess format arguments where %J is used without %D. cp: * error.c (location_of): Add comment. (locate_error, cp_error_at, cp_warning_at, cp_pedwarn_at): Remove. * cp-tree.h (cp_error_at, cp_warning_at, cp_pedwarn_at): Remove. * call.c, class.c, decl.c, decl2.c, friend.c, init.c, name-lookup.c, parser.c, pt.c, search.c, semantics.c, typeck.c, typeck2.c: Use '+' flag instead of %J, cp_error_at, cp_warning_at or cp_pedwarn_at. Mark up some diagnostic strings with N_. java: * class.c, decl.c, expr.c: Use '+' flag instead of %J. Use 'q' flag for quoting. objc: * objc-act.c: Use '+' flag instead of %J. Use 'q' flag for quoting. testsuite: * gcc.dg/format/gcc_diag-1.c: Update. From-SVN: r101532
2005-07-01objc-act.c (objc_build_volatilized_type): New function.Ziemowit Laski2-2/+43
[gcc/objc/ChangeLog] 2005-06-30 Ziemowit Laski <zlaski@apple.com> * objc-act.c (objc_build_volatilized_type): New function. (objc_volatilize_decl): Call objc_build_volatilized_type() instead of build_qualified_type(). [gcc/testsuite/ChangeLog] 2005-06-30 Ziemowit Laski <zlaski@apple.com> * obj-c++.dg/try-catch-11.mm: New. * objc.dg/try-catch-10.m: New. From-SVN: r101493
2005-06-30pretty-print.h (PP_NL_ARGMAX): New.Zack Weinberg2-2/+1
gcc: * pretty-print.h (PP_NL_ARGMAX): New. (text_info): Add locus. (struct chunk_info): New. (output_buffer): Add formatted_obstack, chunk_obstack, and cur_chunk_array. Change obstack to a pointer. (pp_wrapping_mode_t, pp_wrapping_mode, pp_set_verbatim_wrapping): New. (struct pretty_print_info): Replace ideal_maximum_length and prefixing_rule with wrapping. (pp_line_cutoff, pp_prefixing_rule): Update to match. Update prototypes and wrapper macros throughout. * pretty-print.c (pp_formatted_text_data, pp_append_r) (pp_base_clear_output_area, pp_construct, pp_base_formatted_text) (pp_base_last_position_in_text, pp_base_newline, pp_base_character): Update for changes to pp structure. (pp_base_prepare_to_format, pp_base_format_text): Delete. (pp_base_format, pp_base_output_formatted_text): New functions. (pp_base_format_verbatim): Use pp_set_verbatim_wrapping. (pp_verbatim): Clear text.locus. (pp_printf): Likewise. Use pp_format and pp_output_formatted_text. * c-objc-common.c (c_tree_printer): Update function signature. * diagnostic.c (diagnostic_initialize): Update for changes to pp structure. (diagnostic_report_diagnostic): Call pp_format and then pp_output_formatted_text. (verbatim): Clear text.locus. * diagnostic.h (diagnostic_prefixing_rule, diagnostic_line_cutoff): Update for changes to pp structure. * c-lang.c: No need to include c-pretty-print.h. * Makefile.in: Remove bogus line containing only a tab. (c-lang.o): Update dependencies. * toplev.c (announce_function): Don't use verbatim. (default_tree_printer): Update signature. * objc/objc-lang.c: No need to include c-pretty-print.h. * objc/Make-lang.in: Update dependencies. gcc/cp: * cp-lang.c: No need to include cxx-pretty-print.h. * error.c (cp_printer): Update signature. No need to process flags. (print_instantiation_partial_context): Output last newline with pp_base_newline. * Make-lang.in: Update dependencies. gcc/objcp: * objcp-lang.c: No need to include cxx-pretty-print.h. * Make-lang.in: Update dependencies. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r101481
2005-06-29darwin.c (machopic_select_section): constant ObjC string objects now always ↵Ziemowit Laski3-11/+48
have type "__builtin_ObjCString". [gcc/ChangeLog] 2005-06-29 Ziemowit Laski <zlaski@apple.com> * config/darwin.c (machopic_select_section): constant ObjC string objects now always have type "__builtin_ObjCString". [gcc/objc/ChangeLog] 2005-06-29 Ziemowit Laski <zlaski@apple.com> * objc-act.c (objc_build_internal_const_str_type): New function. (check_string_class_template): Use objc_get_class_ivars() instead of TYPE_FIELDS() to retrieve ivar list. (AT_LEAST_AS_LARGE_AS): Check the size of each field's type rather than the field itself. (objc_build_string_object): Synthesize a "__builtin_ObjCString" type and use it to lay out compile-time string objects. * objc-act.h (OCTI_INTERNAL_CNST_STR_TYPE, internal_const_str_type): New. [gcc/testsuite/ChangeLog] 2005-06-29 Ziemowit Laski <zlaski@apple.com> * obj-c++.dg/const-str-1[0-1].mm: New. * objc.dg/const-str-1[0-1].m: New. From-SVN: r101437
2005-06-28Makefile.in: Set and use UNWIND_H.Paul Brook2-0/+6
2005-06-28 Paul Brook <paul@codesourcery.com> gcc/ * Makefile.in: Set and use UNWIND_H. Install as unwind.h. * c-decl.c (finish_decl): Call default_init_unwind_resume_libfunc. * except.c (add_ehspec_entry): Generate arm eabi filter lists. (assign_filter_values): Ditto. (output_ttype): New function. (output_function_exception_table): Use output_ttype. Generate arm eabi filter lists. (default_init_unwind_resume_libfunc): New function. * except.h (default_init_unwind_resume_libfunc): Add prototype. * optabs.c (init_optabs): Don't set unwind_resume_libfunc. * opts.c (decode_options): Use targetm.unwind_tables_default. * target-def.h (TARGET_ASM_TTYPE): Provide and use definition. (TARGET_ARM_EABI_UNWINDER, TARGET_UNWIND_TABLES_DEFAULT): Ditto. * target.h (struct gcc_target): Add asm.ttype, unwind_tables_default and arm_eabi_unwinder. * unwind-c.c: Support Arm EABI unwinder. * unwind.h: Rename ... * unwind-generic.h: ... To this. * doc/tm.texi (TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER): Document. (TARGET_UNWID_TABLES_DEFAULT): Document. * config/arm/arm-protos.h (arm_output_fn_unwind): Add prototype. * config/arm/arm.c (arm_unwind_emit, arm_output_ttype): New functions. (TARGET_UNWIND_EMIT, TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER): Define. (thumb_pushpop, thumb_output_function_prologue): Output unwinding directives. (arm_unwind_emit_stm, arm_unwind_emit_set): New functions. * config/arm/arm.h (MUST_USE_SJLJ_EXCEPTIONS): Only define when !TARGET_UNWIND_INFO. (ARM_OUTPUT_FN_UNWIND, ARM_EABI_UNWIND_TABLES): Define. * config/arm/bpabi.h (TARGET_UNWIND_INFO): Define. * config/arm/elf.h (ASM_DECLARE_FUNCTION_NAME, ASM_DECLARE_FUNCTION_SIZE): Use ARM_OUTPUT_FN_UNWIND. * config/arm/lib1funcs.asm: Include libunwind.S. * config/arm/libgcc-bpabi.ver: Add unwinding routines. * config/arm/libunwind.S: New file. * config/arm/pr-support.c: New file. * config/arm/t-bpabi (LIB1ASMFUNCS): Add _unwind. (UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set. * config/arm/t-symbian (UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set. * config/arm/unwind-arm.c: New file. * config/arm/unwind-arm.h: New file. * config/i386/t-netware (USER_H): Remove unwind.h. * config/ia64/ia64.h (TARGET_UNWIND_TABLES_DEFAULT): Define. gcc/cp/ * Make-lang.in (cp/except.o): Depend on $(TARGET_H) * except.c: Include target.h. (init_exception_processing): Initialize unwind_resume_libfunc. * doc/tm.texi: Document TARGET_ASM_TTYPE gcc/ada/ * misc.c (gnat_init_gcc_eh): Call default_init_unwind_resume_libfunc. gcc/java/ * decl.c (java_init_decl_processing): Call default_init_unwind_resume_libfunc. gcc/objc/ * objc-act.c (objc_init_exceptions): Call default_init_unwind_resume_libfunc. libstdc++/ * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Check for __cxa_end_cleanup. * libsupc++/Makefile.am (sources): Add eh_call.c and eh_arm.c. * libsupc++/eh_arm.cc: New file. * libsupc++/eh_call.cc: New file. * libsupc++/eh_catch.cc (__cxa_get_exception_ptr): Use __gxx_caught_object. (__cxa_begin_catch): Ditto. Use __is_gxx_exception_class. Call _Unwind_Complete when using the ARM EABI. (__cxa_end_catch): Use __is_gxx_exception_class. * libsupc++/eh_personality.cc: Define NO_SIZE_OF_ENCODED_VALUE when using the ARM EABI. (save_caught_exception, restore_caught_exception): New functions. (_throw_typet): New typedef. (get_ttype_entry, get_adjusted_ptr, check_exception_spec): Add ARM EABI implementations. (PERSONALITY_FUNCTION): Use new functions. Addd support for ARM EABI unwinding libary. (__cxa_unexpected): Disable when using the ARM EABI. * libsupc++/eh_throw.cc (__cxa_throw): Use __GXX_INIT_EXCEPTION_CLASS. (__cxa_rethrow): Use __is_gxx_exception_class. Call _Unwind_RaiseException when using the ARM EABI. * libsupc++/unwind-cxx.h (struct __cxa_exception): Add fields for ARM EABI semantics. (struct __cxa_eh_globals): Ditto. (__cxa_call_terminate): Add prototype. (__cxa_type_match, __cxa_begin_cleanup, __cxa_end_cleanup): Add prototypes. (__get_exception_header_from_obj, __get_exception_header_from_ue): Move earlier in file. (__is_gxx_exception_class, __GXX_INIT_EXCEPTION_CLASS, __gxx_caught_object): New functions. * aclocal.m4: Regenerate. * configure: Regenerate. * Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * libmath/Makefile.in: Regenerate. * libsupc++/Makefile.in: Regenerate. * po/Makefile.in: Regenerate. * src/Makefie.in: Regenerate. * testsuite/makefile.in: Regenerate. From-SVN: r101385
2005-06-28objc-act.c (objc_build_struct): Save the TYPE_OBJC_INFO portion of ↵Ziemowit Laski2-0/+23
TYPE_LANG_SPECIFIC info for all variants of... [gcc/objc/ChangeLog] 2005-06-27 Ziemowit Laski <zlaski@apple.com> * objc-act.c (objc_build_struct): Save the TYPE_OBJC_INFO portion of TYPE_LANG_SPECIFIC info for all variants of a class before calling finish_struct(), and restore same TYPE_OBJC_INFO afterwards. [gcc/testsuite/ChangeLog] 2005-06-27 Ziemowit Laski <zlaski@apple.com> * obj-c++.dg/proto-lossage-5.mm: New. * objc.dg/proto-lossage-5.m: New. From-SVN: r101368
2005-06-25Update FSF address.Kelley Cook8-14/+18
From-SVN: r101309
2005-06-15c-tree.h (default_function_array_conversion): Declare.Joseph Myers2-4/+23
* c-tree.h (default_function_array_conversion): Declare. * c-typeck.c (default_function_array_conversion): Export. Correct comment. (default_conversion): Do not call default_function_array_conversion. Do not allow FUNCTION_TYPE. (build_function_call): Call default_function_array_conversion on the function. (convert_arguments): Do not call it on the function arguments. (build_unary_op): Do not allow ARRAY_TYPE or FUNCTION_TYPE for TRUTH_NOT_EXPR. Call default_function_array_conversion for taking address of ARRAY_REF. (build_compound_expr): Do not call default_function_array_conversion. (build_c_cast): Do not call default_function_array_conversion. (convert_for_assignment): Do not call default_conversion. (digest_init): Call default_function_array_conversion to convert string constants and compound literals to pointers, but not otherwise. (output_init_element): Likewise. (build_asm_expr): Do not call default_function_array_conversion. (c_process_expr_stmt): Likewise. (c_objc_common_truthvalue_conversion): Likewise. Do not allow FUNCTION_TYPE. * c-parser.c (c_parser_expression_conv): New. (c_parser_asm_operands, c_parser_expr_list): Add convert_p argument. All callers changed. Call default_function_array_conversion if convert_p. (c_parser_initializer, c_parser_initval): Call default_function_array_conversion except for string constants and compound literals. (c_parser_initelt): Call default_function_array_conversion for ObjC expression received. (c_parser_statement_after_labels): Call c_parser_expression_conv for return and expression statements. (c_parser_paren_condition, c_parser_for_statement, c_parser_conditional_expression): Call c_parser_expression_conv. (c_parser_expr_no_commas, c_parser_conditional_expression, c_parser_binary_expression, c_parser_cast_expression, c_parser_unary_expression): Call default_function_array_conversion. objc: * objc-act.c (my_build_string_pointer): New. (objc_get_class_reference, get_super_receiver): Call my_build_string_pointer instead of my_build_string when building function arguments. testsuite: * gcc.dg/noncompile/20040203-3.c: Update expected message. From-SVN: r100984
2005-05-25objc-act.c (volatilized_hash): Avoid warnings on 64-bit machines.Mike Stump2-1/+6
* objc-act.c (volatilized_hash): Avoid warnings on 64-bit machines. From-SVN: r100155
2005-05-24objc-act.c (objc_build_struct): New function.Ziemowit Laski4-380/+611
* objc-act.c (objc_build_struct): New function. (objc_derived_from_p): Likewise. (objc_build_component_ref): Likewise. (objc_copy_binfo): Likewise. (objc_xref_basetypes): Likewise. (objc_lookup_protocol): Likewise. (objc_compare_protocols): Likewise. (objc_volatilize_decl): Likewise. (encode_aggregate_fields): Likewise. (volatilized_hash): Likewise. (volatilized_eq): Likewise. (objc_compare_types): Likewise. (objc_type_quals_match): Likewise. (DERIVED_FROM_P): New ObjC macro, corresponding to C++ macro of same name. (get_class_ivars): Add second parameter indicating if entire hierarchy is desired. (struct volatilized_type): New type. (volatilized_htab): New hash table. (objc_types_compatible_p, objc_comptypes): Remove functions. (synth_module_prologue): Do not initialize 'unused_list'. (objc_get_class_reference): Fix ObjC++ impedance mismatches. (objc_declare_alias): Implement as a typedef. (objc_substitute_decl, objc_gimplify_expr): Reformat. (objc_get_class_ivars): Adjust call to get_class_ivars(). (next_sjlj_build_enter_and_setjmp, synth_forward_declarations, build_ivar_reference, get_super_receiver): Call objc_build_component_ref() instead of build_component_ref(). (objc_begin_catch_clause): Use DERIVED_FROM_P() instead of objc_comptypes(). (build_private_template): Call objc_build_struct() instead of start_struct() and finish_struct(). (hash_init): Initialize volatilized_htab. (objc_is_public): Adjust calls to objc_get_ivars(); adjust ObjC++ impedance mismatches. (encode_aggregate_within): Streamline by calling encode_aggregate_fields(). * objc-act.h (objc_types_compatible_p): Remove prototype. (OCTI_UNUSED_LIST, unused_list): Remove slot. * objc-lang.c (LANG_HOOKS_TYPES_COMPATIBLE_P): Remove. From-SVN: r100123
2005-05-20Give credit, where credit is due.Ziemowit Laski1-1/+2
From-SVN: r100035
2005-05-18dummy-checksum.c: New.Geoffrey Keating2-2/+20
2005-05-18 Geoffrey Keating <geoffk@apple.com> * dummy-checksum.c: New. * genchecksum.c: New. * c.opt (print_pch_checksum): New flag. * c-pch.c (struct c_pch_validity): Make much shorter. (no_checksum): New. (host_machine): Remove. (target_machine): Remove. (get_ident): Change PCH version number. (pch_init): When -fverbose-asm, print out the compiler fingerprint. Don't put triplets or version string in PCH validity data. Do put the compiler checksum in the validity data. (c_common_valid_pch): Don't check triplets or version string. Do check checksum. (c_common_print_pch_checksum): New. * c-opts.c (c_common_handle_option): Add OPT_print_pch_checksum. Print fingerprint with -v. * c-common.h (c_common_print_pch_checksum): New. (executable_checksum): New. * Makefile.in (STAGEMOVESTUFF): Add cc1*-dummy, *-checksum.c. (cc1-dummy): New rule. (cc1-checksum.c): New rule. (cc1-checksum.o): New rule. (cc1): Add checksum support. (build/genchecksum): New. (build/genchecksum.o): New. (dummy-checksum.o): New. (genobjnames): Add genchecksum.o. (mostlyclean): Remove *-checksum.c. (gnucompare): Add libgcc to list of directories checked. Make comparison problems in libgcc/ and with checksum files only be warnings. * doc/invoke.texi (Precompiled Headers): Remove caution. Document that it must be the exact same binary. Add a few known-safe flags to the list. In cp/: 2005-05-18 Geoffrey Keating <geoffk@apple.com> * Make-lang.in (cc1plus-dummy): New. (cc1plus-checksum.c): New. (cc1plus-checksum.o): New. (cc1plus): Add cc1plus-checksum.o. In objc/: 2005-05-18 Geoffrey Keating <geoffk@apple.com> * Make-lang.in (cc1obj-dummy): New. (cc1obj-checksum.c): New. (cc1obj-checksum.o): New. (cc1obj): Add cc1obj-checksum.o. In objcp/: 2005-05-18 Geoffrey Keating <geoffk@apple.com> * Make-lang.in (cc1objplus-dummy): New. (cc1objplus-checksum.c): New. (cc1objplus-checksum.o): New. (cc1objplus): Add cc1objplus-checksum.o. From-SVN: r99928
2005-05-18re PR objc/21641 (cris-axis-elf, cris-axis-linux-gnu, mmix-knuth-mmixware, ↵Mike Stump2-3/+10
x86_64-unknown-linux-gnu broken libobjc/Object.m) PR objc/21641 * objc-act.c (struct interface_tuple): Mark it up for GC. (interface_htab): It is really a struct interface_tuple. From-SVN: r99922