Age | Commit message (Collapse) | Author | Files | Lines |
|
From-SVN: r91889
|
|
formal...
* lib-xref.adb (Generate_Reference): Handle properly a reference to an
entry formal, when an accept statement has a pragma Unreferenced for it.
* sem_ch9.adb (Analyze_Accept_Statement): Reset the Is_Referenced flag
and the Has_Pragma_Unreferenced flag for each formal before analyzing
the body, to ensure that warnings are properly emitted for each accept
statement of a given task entry.
From-SVN: r91888
|
|
From-SVN: r91887
|
|
compile-time warning.
* g-os_lib.adb (Spawn): Explicitly initialize Saved_Error to avoid a
compile-time warning.
From-SVN: r91886
|
|
version message.
* gnatmem.adb, gnatname.adb, gnatsym.adb, gprcmd.adb, vms_conv.adb:
Output the copyright message on a separate line from the version
message.
From-SVN: r91885
|
|
* exp_dist.adb (Specific_Build_General_Calling_Stubs,
Specific_Build_Stub_Target): New subprograms.
(Build_Subprogram_Calling_Stubs): Make this procedure independent from
the PCS implementation used, using the above PCS-customized subprograms.
Minor reformatting.
(PolyORB_Support.Helpers): New subunit containing supporting subprograms
for generation of DSA code targeted to the PolyORB PCS.
(Add_Stub_Type): Rewrite to isolate the parts that are specific to one
implementation of the partition communication subsystem in ancillary
subprograms.
(Specific_Build_Stub_Type, GARLIC_Support.Build_Stub_Type,
PolyORB_Support.Build_Stub_Type): New subrograms containing the
PCS-specific part of Add_Stub_Type.
(Insert_Partition_Check): Use runtime library function to perform
E.4(19) check.
* rtsfind.ads: New entity System.PolyORB_Interface.Make_Ref
(RE_Same_Partition): New entity, from s-parint.
* s-parint.ads, s-parint.adb (Same_Partition): New subprogram.
From-SVN: r91884
|
|
rewritten...
* exp_ch7.adb (Expand_Cleanup_Actions): If statement sequence of
construct is rewritten, preserve end label to permit source navigation.
From-SVN: r91883
|
|
* exp_ch6.adb (Expand_Call): Add comment on handling of back end
intrinsic
* exp_intr.adb (Expand_Intrinsic_Call): Ignore unrecognized intrinsic,
leaving call unchanged.
This deals with the case where the pragma Import specified
an external name, to be handled by the back end.
* sem_prag.adb (Process_Import_Or_Interface): Do not check validity of
subprogram which is Imported with convention Intrinsic if an
External_Name argument is specified.
(Process_Import_Or_Interface): Properly diagnose link name argument.
(Inlining_Not_Possible): New name for Cannot_Inline, to avoid confusion
with Sem_Ch6.Cannot_Inline.
(Process_Inline): Provide separate warning for inapplicable inline
pragma.
(Cannot_Inline): Reject subprograms that have an at_end handler, so that
treatment is uniform on different targets.
From-SVN: r91882
|
|
implicit dereference as its prefix...
* exp_ch4.adb (Expand_N_Indexed_Component): For an indexed component
with an implicit dereference as its prefix, use
Insert_Explicit_Dereference instead of merely rewriting the prefix into
an explicit dereference. This ensures that a reference to the original
prefix is generated, if appropriate.
* sem_util.adb (Insert_Explicit_Dereference): When an implicit
dereference is rewritten to an explicit one, generate a reference to
the entity denoted by its prefix using the original prefix node, so
the dereference can be properly recorded as a read of the denoted
access value, if appropriate.
* sem_warn.adb (Output_Unreferenced_Messages): Do not abstain from
emitting 'assigned but never read' warning on a variable on the basis
that it has an access type.
(Check_References): Emit unreferenced warning when the scope is a
subprogram body.
From-SVN: r91881
|
|
From-SVN: r91880
|
|
TYPE_SIZE_UNIT of result type if...
* decl.c (maybe_pad_type): Use TYPE_SIZE_UNIT of the input type for
TYPE_SIZE_UNIT of result type if SIZE is not specified.
(make_aligning_type): Pass -1 as ADDRESSABLE to prevent the creation
of a bitfield, which we know is useless and causes trouble because of
alignment implications.
* utils.c (create_var_decl): Set DECL_COMMON again on targets without
BSS sections.
(process_attributes): Clear DECL_COMMON again when a section attribute
is present.
(finish_record_type): Independently track if RECORD_TYPE has SIZE and/or
SIZE_UNIT already set and use to compute final SIZE and SIZE_UNIT.
(create_field_decl): Special case ADDRESSABLE negative to mean
"no bitfield creation", to be used by make_aligning_type. Don't
restrict bitfield creation to !ADDRESSABLE any more, as some BLKmode
fields claimed addressable still have to be bitfields. Use
value_factor_p instead of a raw binop construction to check for the
position's alignment.
From-SVN: r91879
|
|
* debug.adb: Document that -gnatdA automatically sets -gnatR3m
* gnat1drv.adb (Gnat1drv): If debug flag A set, then automatically
set -gnatR3m mode.
* repinfo.adb (List_Rep_Info): Remove special handling of -gnatdA
flag. No longer needed now that we handle this in gnat1drv.adb.
* repinfo.ads: Minor reformatting
From-SVN: r91878
|
|
(Current_Spec_Suffix => Ada_Spec_Suffix...
* make.adb (Check_Mains, Switches_Of): Adapt to name changes in
package Prj (Current_Spec_Suffix => Ada_Spec_Suffix,
Current_Body_Suffix => Ada_Body_Suffix).
Take into account Externally_Built attribute.
* clean.adb (In_Extension_Chain): Always return False when one of the
parameter is No_Project.
(Clean_Project): Adapt to changes in package Prj (Lang_Ada =>
Ada_Language_Index).
(Gnatclean): Adapt to change in package Prj.Pars (no parameter
Process_Languages for procedure Parse).
* gnatcmd.adb (Carg_Switches): New table.
(GNATCmd): Put all switches following -cargs in the Carg_Switches table.
Adapt to name changes in package Prj (Current_Spec_Suffix =>
Ada_Spec_Suffix, Current_Body_Suffix => Ada_Body_Suffix).
* mlib-prj.adb: Adapt to changes in packages Prj and Prj.Com: type
Header_Num and function Hash are now declared in package Prj,
not Prj.Com.
* prj.adb (Suffix_Of): New function.
(Set (Suffix)): New procedure.
(Hash): One function moved from Prj.Com
(Is_Present, Language_Processing_Data_Of): New functions
(Set): Two new procedures
(Add_Language_Name, Display_Language_Name): New procedures
* prj.ads: (Suffix_Of): New function
(Set (Suffix)): New procedure
Add several types and tables for multi-language support.
(Header_Num): Type moved from Prj.Com
(Hash): Two functions moved from Prj.Com
(Is_Present, Language_Processing_Data_Of): New functions
(Set): Two new procedures
(Add_Language_Name, Display_Language_Name): New procedures
(Naming): Component name changes:
Current_Spec_Suffix => Ada_Spec_Suffix,
Current_Body_Suffix => Ada_Body_Suffix. Add new components:
Impl_Suffixes, Supp_Suffixes.
(Project_Data): New components: Externally_Built, Supp_Languages,
First_Language_Processing, Supp_Language_Processing, Default_Linker,
Default_Linker_Path.
* prj-attr.adb: Add new attributes Ada_Roots and Externally_Built and
new package Language_Processing with its attributes (Compiler_Driver,
Compiler_Kind, Dependency_Option, Compute_Dependency, Include_Option,
Binder_Driver, Default_Linker).
* prj-com.ads, prj-com.adb (Hash): Function moved to package Prj.
(Header_Num): Type moved to package Prj
* prj-env.adb: Adapt to name changes in package Prj
(Current_Spec_Suffix => Ada_Spec_Suffix,
Current_Body_Suffix => Ada_Body_Suffix).
* prj-ext.adb: Add the default project dir (<prefix>/log/gnat) by
default to the project path, except the "-" is one of the directories
in env var ADA_PROJECT_PATH.
(Current_Project_Path): Global variable, replacing Project_Path
that was in the body of Prj.Part.
(Project_Path): New function
(Set_Project_Path): New procedure
Initialize Current_Project_Path during elaboration of the package
Remove dependency on Prj.Com, no longer needed
* prj-ext.ads (Project_Path): New function
(Set_Project_Path): New procedure
* prj-nmsc.adb (Body_Suffix_Of): New function. Returns .<lang> when no
suffix is defined for language <lang>.
(Find_Sources, Record_Other_Sources): Use Body_Suffix_Of, instead of
accessing directly the components of Naming.
(Look_For_Sources): Use Set (Suffix) to set the suffix of a language.
Reorganise of this package.
Break procedure Check in several procedures.
* prj-nmsc.ads: Replace all procedures (Ada_Check,
Other_Languages_Check and Language_Independent_Check) with a single
procedure Check.
* prj-pars.ads, prj-pars.adb (Parse): Remove parameter
Process_Languages, no longer needed.
* prj-part.adb (Project_Path): Move to the body of Prj.Ext as
Current_Project_Path.
Remove elaboration code, moved to the body of Prj.Ext
Use new function Prj.Ext.Project_Path instead of old variable
Project_Path.
(Post_Parse_Context_Clause): Get Resolved_Path as a case-sensitive path.
When comparing with project paths on the stack, first put the resolved
path in canonical case.
(Parse_Single_Project): Set the path name of the project file in the
tree to the normalized path.
* prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): Remove
parameter Process_Languages, no longer needed.
(Recursive_Check): Call Prj.Nmsc.Check, instead of Ada_Check and
Other_Languages_Check.
* prj-tree.ads (Project_Name_And_Node): New component Canonical_Path
to store the resolved canonical path of the project file.
Remove dependency to Prj.Com, no longer needed
* prj-util.adb: Adapt to name changes in package Prj
(Current_Spec_Suffix => Ada_Spec_Suffix, Current_Body_Suffix =>
Ada_Body_Suffix).
* snames.ads, snames.adb: New standard names: Ada_Roots, Binder_Driver,
Compiler_Driver, Compiler_Kind, Compute_Dependency, Default_Linker,
Externally_Built, Include_Option, Language_Processing.
* makegpr.adb: Numerous changes due to changes in packages
Prj and Prj.Nmsc.
* gnatls.adb: Add the default project dir (<prefix>/log/gnat) by
default to the project path, except whe "-" is one of the directories
in env var ADA_PROJECT_PATH.
(Gnatls): In verbose mode, add the new section "Project Search Path:"
From-SVN: r91877
|
|
* back_end.adb (Scan_Back_End_Switches): Accept --param.
* lang-specs.h: Accept --param.
From-SVN: r91876
|
|
* atree.adb (Visit_Itype): Create a new name for the generated itype,
because the back-end may otherwise treat it as a redefinition of the
old symbol.
From-SVN: r91875
|
|
16#7FFF# to avoid exceeding Integer'Last...
* a-exexpr.adb (Others_Value, All_Others_Value): Change initial values
from 16#BEEF# to 16#7FFF# to avoid exceeding Integer'Last on 16-bit
targets (such as AAMP).
From-SVN: r91874
|
|
task being suspended.
* s-intman-vxworks.adb (Notify_Exception): removed useless check for
current task being suspended.
* init.c (__gnat_clear_exception): added to reset VxWorks exception
count.
(__gnat_map_signal): removed test for current task being suspended.
From-SVN: r91873
|
|
From-SVN: r91870
|
|
* config/frv/frv.c (frv_sort_insn_group): Always initialize
packet_group->nop.
From-SVN: r91867
|
|
PR c++/18100
* decl.c (lookup_and_check_tag): Diagnose nested class with
the same name as enclosing class.
* g++.dg/lookup/name-clash4.C: New test.
From-SVN: r91866
|
|
.: PR c++/18672
* gimplify.c (canonicalize_addr_expr): Cope with array of
incomplete type.
(gimplify_conversion): Remove redundant checks.
testsuite:
PR c++/18672
* g++.dg/opt/array1.C: New.
From-SVN: r91865
|
|
From-SVN: r91864
|
|
cp:
PR c++/18803
* cp-tree.h (REFERENCE_REF_P): New.
(CPTI_TYPE_INFO_TYPE): Rename to ...
(CPTI_CONST_TYPE_INFO_TYPE): ... here.
(CPTI_TYPE_INFO_REF_TYPE): Remove.
(type_info_type_node): Rename to ...
(const_type_info_type_node): ... here.
(type_info_ref_type): Remove.
* call.c (build_user_type_conversion): Reformat.
(resolve_args): Do not convert_from_reference.
(build_object_call): Call convert_from_reference.
(prep_operand): Do not convert_from_reference.
(build_new_method_call): Likewise.
* class.c (build_vfield_ref): Likewise.
* cvt.c (convert_to_reference): Likewise.
(convert_from_reference): Build INDIRECT_REF here, not with
build_indirect_ref.
(convert_force): Do not convert_from_reference.
(build_expr_type_conversion): Likewise.
* decl.c (grok_reference_init): Likewise.
* decl2.c (delete_sanity): Likewise.
* except.c (initialize_handler_parm): Use POINTER_TYPE_P.
* init.c (build_dtor_call): Do not convert_from_reference.
* parser.c (cp_parser_template_argument): Unwrap indirected
reference. Allow TEMPLATE_PARM_INDEX as an object parm.
* pt.c (tsubst_copy_and_build) <case INDIRECT_REF>: Use
convert_from_reference, if indicated.
<case CALL_EXPR>: Do not convert_from_reference.
<case PARM_DECL, VAR_DECL>: Convert_from_reference if needed.
(tsubst_initializer_list): Do not convert_from_reference.
* rtti.c (init_rtti_processing): Adjust node creation.
(throw_bad_typeid): Use const_type_info_type_node.
Do not convert_from_reference.
(typeid_ok_p): Use const_type_info_type_node.
(build_typeid, get_typeid): Always return type_info typed node.
(build_dynamic_cast_1): Dont convert_from_reference. Refactor.
* semantics.c (finish_stmt_expr_expr): Do not
convert_from_reference.
(finish_id_expression): Convert_from_reference as appropriate.
* typeck.c (decay_conversion): Do not convert_from_reference.
(finish_class_member_access_expr): Likewise.
(build_indirect_ref): Use POINTER_TYPE_P.
(convert_arguments): Do not convert_from_reference.
(build_modify_expr): Likewise.
(convert_for_initialization): Likewise.
* typeck2.c (build_x_arrow): Likewise.
testsuite:
PR c++/18803
* g++.dg/template/operator5.C: New.
From-SVN: r91863
|
|
* config/i386/i386.c (output_387_binary_op,
ix86_prepare_fp_compare_args): Fix is_sse condition.
From-SVN: r91862
|
|
PR c/18867
* gcc.dg/noncompile/20041207.c: Fix typo in dg directive.
From-SVN: r91861
|
|
* config/i386/i386-protos.h (ix86_split_fp_branch): New rtx
argument.
* config/i386/i386.c (output_fp_compare): Fix is_sse condition.
Use EFLAGS_P only when fcomi insn should be used. Fix handling
of eflags_p variable. Change alt table accordingly. For non-fcomi
compare insn always use trailing fnstsw insn. Fix intmode
calculation for ficom insn.
(ix86_split_fp_branch): Add "rtx pushed" as new parameter. Call
ix86_free_from_memory when "pushed" is specified.
(ix86_expand_branch): Change call to ix86_split_fp_branch.
* config/i386/i386.md (*cmpfp_0_sf, *cmpfp_0_df, *cmpfp_0_xf):
Change eflags_p parameter in call to output_fp_compare.
(*cmpfp_2_sf, *cmpfp_2_df, *cmpfp_2_xf): Remove.
(*cmpfp_2_sf_1, *cmpfp_2_df_1, *cmpfp_2_xf_1): Rename to
*cmpfp_2_sf, *cmpfp_2_df, *cmpfp_2_xf. Change eflags_p
parameter in call to output_fp_compare.
(*cmpfp_2_u): Remove.
(*cmpfp_2_u_1): Rename to *cmpfp_2_u. Change eflags_p parameter
in call to output_fp_compare.
(*ficom_1): Remove insn definition and corresponding define_split.
(*cmpfp_si): New insn definition.
(*fp_jcc_8): New insn definition. Add new splitters for
"memory_operand" and "register_operand".
(define_split): Add new parameter in call to ix86_split_fp_branch.
config/i386/predicates.md (float_operator): New predicate.
From-SVN: r91856
|
|
tcc_unary.
* c-common.c (verify_tree): Don't check code length if we know
we are handling tcc_unary.
* print_tree.c (print_node): Remove code to handle RTL
appearing as a part of a tree node.
* tree-gimple.c (recalculate_side_effects): Rename fro as len.
* tree.c (build1_stat): Don't check TREE_CODE_LENGTH.
(PROCESS_ARG): Don't refer to fro.
(build2_stat, build3_stat, build4_stat): Don't compute fro.
From-SVN: r91855
|
|
PR middle-end/18293
* expmed.c (EXACT_POWER_OF_2_OR_ZERO_P): Move definition earlier.
(expand_mult): Special case powers of two to avoid synth_mult.
* loop.c (product_cheap_p): Handle case where expand_mult does
require/generate any instructions (i.e. multiplication by zero).
From-SVN: r91851
|
|
fix off-by-one error on zero-based array bounds.
* tree-pretty-print.c (dump_array_domain): Split out from
dump_generic_node; fix off-by-one error on zero-based array bounds.
(dump_generic_node): Use it.
(print_declaration): Likewise.
From-SVN: r91850
|
|
inline-unit-growth to match...
* doc/invoke.texi: Adjust default values for
large-function-growth and inline-unit-growth to match
params.def. Clarify used algorithm.
From-SVN: r91845
|
|
PR target/18443
* config/ia64/ia64.c (ia64_assemble_integer): Add support for
emitting unaligned pointer-sized integers.
From-SVN: r91842
|
|
From-SVN: r91840
|
|
PR c/18867
* c-typeck.c (c_start_case): Set orig_type to error_mark_node
when the type of the controlling expression is not a valid type.
testsuite/
* gcc.dg/noncompile/20041207.c: New test.
From-SVN: r91837
|
|
PR tree-optimization/17340
* tree-ssa-pre.c (compute_antic): Fix comment.
(compute_avail): Do not recurse, instead do a DFS using a stack
and a loop.
(execute_pre): Adjust.
From-SVN: r91835
|
|
[gcc/ChangeLog]
2004-12-07 Ziemowit Laski <zlaski@apple.com>
* c-tree.h (struct lang_type): Rename 'objc_protocols' field
to 'objc_info'.
[gcc/cp/ChangeLog]
2004-12-07 Ziemowit Laski <zlaski@apple.com>
* cp-tree.h (struct lang_type_class): Rename 'objc_protocols'
field to 'objc_info'.
From-SVN: r91833
|
|
2004-12-07 Eric Christopher <echristo@redhat.com>
PR target/16317
* config/netbsd.h (NO_IMPLICIT_EXTERN_C): Define.
From-SVN: r91831
|
|
2004-12-07 Eric Christopher <echristo@redhat.com>
* config/mips/mips-protos.h (mips_valid_pointer_mode): Move
prototype...
* config/mips/mips.c: ... here. Make static.
From-SVN: r91830
|
|
2004-12-07 Eric Christopher <echristo@redhat.com>
PR target/18442
* config/mips/mips.c (mips_vector_mode_supported_p): New function.
(TARGET_SCALAR_MODE_SUPPORTED_P): Define to above.
From-SVN: r91820
|
|
gcc/
* c-common.c, expr.c, fold-const.c, print-tree.c,
tree-gimple.c, tree-inline.c, tree-pretty-print.c,
tree-ssa-loop-im.c, tree-ssa-loop-ivopts.c: Replace uses of
first_rtl_op with TREE_CODE_LENGTH.
* tree.c (first_rtl_op): Remove.
Replace uses of first_rtl_op with TREE_CODE_LENGTH.
* tree.h: Remove the prototype for first_rtl_op.
gcc/cp/
* pt.c: Replace a use of first_rtl_op with TREE_CODE_LENGTH.
From-SVN: r91818
|
|
* config/rs6000/t-aix43, config/rs6000/t-aix52 (SHLIB_LINK):
Revert 2004-12-01 change.
From-SVN: r91812
|
|
leaving a class scope.
* name-lookup.c (leave_scope): We only need to update
class_binding_level when leaving a class scope.
From-SVN: r91807
|
|
From-SVN: r91804
|
|
[gcc/ChangeLog]
2004-12-06 Ziemowit Laski <zlaski@apple.com>
* c-tree.h (struct lang_type): Add 'objc_protocols' field.
[gcc/cp/ChangeLog]
2004-12-06 Ziemowit Laski <zlaski@apple.com>
* cp-tree.h (struct lang_type_class): Add 'objc_protocols' field.
From-SVN: r91803
|
|
* reload.c (find_valid_class): Fix logic to test inner mode as well.
(push_reload): Pass inner mode.
From-SVN: r91802
|
|
2004-12-06 Eric Christopher <echristo@redhat.com>
* doc/tm.texi (TARGET_VALID_POINTER_MODE): Document.
From-SVN: r91801
|
|
From-SVN: r91797
|
|
From-SVN: r91792
|
|
PR tree-optimization/18601
* tree-cfg.c (thread_jumps, thread_jumps_from_bb): Removed.
(tree_forwarder_block_p): Do not consider blocks that are its own
successors forwarders.
(cleanup_forwarder_blocks, remove_forwarder_block): New functions.
(cleanup_tree_cfg): Use cleanup_forwarder_blocks instead of
thread_jumps.
* tree-flow.h (bb_ann_d): Remove forwardable.
Co-Authored-By: Kazu Hirata <kazu@cs.umass.edu>
From-SVN: r91787
|
|
* expr.c (expand_expr_real_1): Remove an "if" whose condition
is always false.
From-SVN: r91786
|
|
* Make-lang.in (JAVA_MANFILES): Added gcj-dbtool.
(java.uninstall): Likewise.
(java.maintainer-clean): Likewise.
(.INTERMEDIATE): Likewise.
(java.install-man): Likewise.
(gcj-dbtool.pod): New target.
* gcj.texi (Code Generation): Document -findirect-dispatch.
(libgcj Runtime Properties): Document
gnu.gcj.precompiled.db.path.
(Top): Link to "Invoking gcj-dbtool".
From-SVN: r91785
|