PR fortran/24892
* io/io.h (unit_access): Add ACCESS_APPEND.
* io/open.c (access_opt): Add APPEND value for ACCESS keyword.
(st_open): Use that new value to set the POSITION accordingly.
* gfortran.dg/open_access_append_1.f90: New test.
* gfortran.dg/open_access_append_2.f90: New test.
From-SVN: r107119
2005-11-16 Richard Guenther <rguenther@suse.de>
PR middle-end/24851
* fold-const.c (extract_array_ref): Return byte offset
in all cases.
(fold_binary): Fold &x[a] CMP &x[b] to
a*sizeof(*x) CMP b*sizeof(*x) to get correct overflow
behavior.
* gcc.c-torture/execute/pr24851.c: New testcase.
From-SVN: r107117
PR c++/24580
* method.c (locate_copy): Also use skip_artificial_parms here.
(synthesize_exception_spec): Use CLASS_TYPE_P rather than checking
for RECORD_TYPE.
(locate_ctor): Abort if we fail to find a default constructor.
From-SVN: r107097
PR rtl-opt/24160
PR target/24621
* reload1.c (reg_equiv_invariant): New.
(reload): Allocate, initialize, and free it.
(calculate_needs_all_insns): Check it when skipping equivalence
setting insns.
(alter_reg): Likewise.
(eliminate_regs_1): Rename from eliminate_regs. Add new
may_use_invariant argument; only use reg_equiv_invariant when true.
(eliminate_regs): New.
(eliminate_regs_in_insn): Use eliminate_regs_1; track when we're in
a context for which may_use_invariant may be true.
Co-Authored-By: J"orn Rennecke <joern.rennecke@st.com>
Co-Authored-By: Ulrich Weigand <uweigand@de.ibm.com>
From-SVN: r107093
* fold-const.c (const_binop): Don't constant fold the operation
if the result has overflowed and flag_trapping_math.
* simplify-rtx.c (simplify_const_binary_operation): Likewise.
From-SVN: r107092
gcc/
* config/arm/unwind-arm.c (abort): Add prototype here.
(UCB_FORCED_STOP_ARG): Correct typo in macro argument.
(struct phase1_vrs): Add prev_sp.
(unwind_phase2_forced): Save the original core registers instead of
modifying entry_vrs. Take a new flag argument for resuming unwinding
and set action flags accordingly. Always set _US_END_OF_STACK when
get_eit_entry fails. Unwind before calling the stop function.
(_Unwind_GetCFA): New function.
(__gnu_Unwind_ForcedUnwind): Update call to unwind_phase2_forced.
(__gnu_Unwind_Resume_or_Rethrow): Likewise.
(__gnu_Unwind_Resume): Do not unwind here for forced unwinding;
just call unwind_phase2_forced.
(_Unwind_GetDataRelBase, _Unwind_GetTextRelBase): Move to here.
* config/arm/unwind-arm.h (abort): Remove prototype.
(_Unwind_GetDataRelBase, _Unwind_GetTextRelBase): Change to
prototypes.
(_Unwind_GetCFA): New prototype.
* config/arm/pr-support.c (abort): Add prototype here.
* unwind-c.c (PERSONALITY_FUNCTION) [__ARM_EABI_UNWINDER__]: Handle
forced unwinding.
* config/arm/arm.c (arm_expand_prologue, thumb_expand_prologue): Do
not schedule the prologue with non-call exceptions and EABI.
gcc/testsuite/
* gcc.dg/cleanup-5.c, gcc.dg/cleanup-8.c, gcc.dg/cleanup-9.c,
gcc.dg/cleanup-10.c, gcc.dg/cleanup-11.c: Update for ARM EABI.
From-SVN: r107091
PR 24357
* doc/invoke.texi: Distinguish between free and fixed form instead of
Fortran and Fortran 90/95. Remove ratfor from the list of supported
languages.
* gcc.c (default_compilers): Remove double entries, add entries for
suffixes '.F90' and '.F95'.
From-SVN: r107078
PR rtl-optimization/23392
* regrename.c (enum scan_actions) Add mark_access.
(scan_actions_name): Ditto.
(scan_rtx_reg): Handle mark_access.
(scan_rtx_address): Do nothing for mark_access.
(build_def_use): Mark source registers in REG_FRAME_RELATED_EXPR
and regs in REG_INC notes before closing chains for dead regs.
Mark destination regs in REG_FRAME_RELATED_EXPR notes after
opening chains for new writes.
From-SVN: r107059
PR libgcj/15430
* gnu/java/net/natPlainSocketImplPosix.cc (throw_on_sock_closed): New
function.
(accept): Call it.
(close): Call shutdown before closing.
(read()): Call read_helper with proper parameters.
(read(buffer, int, int)): Likewise.
(read_helper): Pass pointer to the PlainSocketImpl, remove native_fd
and timeout parameters. Make prototype to match. Use
pointer to PlainSocketImpl to access members. Call throw_on_sock_closed
in two places.
From-SVN: r107036
2005-11-14 Cyrille Comar <comar@adacore.com>
Robert Dewar <dewar@adacore.com>
Vincent Celier <celier@adacore.com>
Ben Brosgol <brosgol@adacore.com>
Jose Ruiz <ruiz@adacore.com>
Pascal Obry <obry@adacore.com>
* gnat_ugn.texi:
Document that -fstack-check is needed for strict compliance with the
Ada 95 Reference Manual.
Correct reference to VAX systems to meet HP guidelines
Add documentation for new gnatmake switches -vl, -vm and -vh
Replace DEC Ada by HP Ada
Replace DIGITAL by HP
Remove empty section on tools in compatibility section
Clarify the Windows convention semantics.
Document the Win32 calling convention.
The Stdcall, Win32 and DLL convention are synonyms.
Add a note in -gnatR description about zero size record components
Note on new >= and <= warnings for -gnatwc
Document that equal sign after -gnatm is optional.
Note that strip is working fine on DLL built with a Library
Project. The restriction apply only to DLL built with gnatdll.
Update section about the way to debug a DLL.
Update information about the DLL convention.
Document -C switch for gnatprep
Document new attribute Library_ALI_Dir
Update elaboration doc to include implicit Elaborate pragmas now
generated for subprogram instantiations.
Document limitation on executable names that include spaces for --GCC,
--GNATBIND, and --GNATLINK switches.
Document that -w causes -gnatws to be added at start of gcc switches
* gnat_rm.texi: Document that -mieee is needed for generating infinite
and NaN values in case of overflow on machines that are not fully
compliant with the IEEE floating-point standard.
Create a section describing the set of compiler options needed for
strict compliance with the Ada 95 Reference Manual.
Add documentation for pragma Obsolescent applied to a package
Clarify potential issues of mixed language programs related to the
I/O buffering enabling in the elaboration of the GNAT runtime.
Add extra documentation for pragma Restrictions (No_Elaboration_Code)
This documentation only patch adds extra documentsion for pragma
Restrictions (No_Elaboration_Code), explaining why it is not possible
to document this restriction in terms of allowed source constructs.
Document string literal form of pragma Warnings
Document new attribute Library_ALI_Dir
Add documentation on stable attributes in project files that was missing
* gnat-style.texi: Indicate that paragraphs within a single comment
should be separated by empty comment lines
* ug_words: Added replacements for -gnat95 and -gnat05 (/95 and
/05 respectively)
* bindusg.adb: Minor cleanup, put -m before -M for consistency
From-SVN: r107015
2005-11-14 Vincent Celier <celier@adacore.com>
* makegpr.adb (Gprmake): Do not attempt to build the global archive if
there is no object directory.
2005-11-14 Robert Dewar <dewar@adacore.com>
* usage.adb: Minor adjustment to output format, use nn instead of nnn
(so that -gnateInnn does not run into next column)
2005-11-14 Ed Falis <falis@adacore.com>
* s-bitops.adb (Bits_Array): corrected comment: "unconstrained" =>
"constrained"
2005-11-14 Cyrille Comar <comar@adacore.com>
* s-chepoo.ads: Add comments on Dereference.
Remove unnecessary inherited abstract primitives.
Cosmetic cleanup.
2005-11-14 Robert Dewar <dewar@adacore.com>
* sem_cat.ads (Validate_Access_Type_Declaration): Remove declaration
node parameter, not needed, since it is available as Declaration_Node.
2005-11-14 Geert Bosch <bosch@adacore.com>
* s-exnllf.adb (Exn_LLF): Fix comment to be more precise and
grammatically correct.
2005-11-14 Vincent Celier <celier@adacore.com>
* s-fileio.ads: Correct spelling error in comment
From-SVN: r107014