Kaz Kojima [Thu, 22 May 2008 22:23:54 +0000 (22:23 +0000)]
sh.opt (mfixed-range): New option.
* config/sh/sh.opt (mfixed-range): New option.
* config/sh/sh-protos.h (sh_fix_range): Declare.
* config/sh/sh.c (sh_fix_range): New function.
* config/sh/sh.h (sh_fixed_range_str): Declare.
(OVERRIDE_OPTIONS): Call sh_fix_range if sh_fixed_range_str
is not empty.
* doc/invoke.texi (SH Options): Document -mfixed-range.
From-SVN: r135779
Thomas Koenig [Thu, 22 May 2008 21:55:43 +0000 (21:55 +0000)]
re PR libfortran/36302 (cshift and eoshift missing some kind=16 functions)
2008-05-22 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libgfortran/36302
* gfortran.map (GFORTRAN_1.1): Add _gfortran_eoshift0_16,
_gfortran_eoshift0_16_char, _gfortran_eoshift2_16,
_gfortran_eoshift2_16_char,_gfortran_cshift0_16,
_gfortran_cshift0_16_char. Sort alphabetically.
* intrinsics/eoshift0.c: Add function for kind=16 integer.
* intrinsics/eoshift2.c: Likewise.
* intrinsics/cshift0.c: Likewise.
2008-05-22 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libgfortran/36302
* gfortran.dg/cshift_large_1.f90: New test.
* gfortran.dg/eoshift_large_1.f90: New test.
From-SVN: r135777
Kai Tietz [Thu, 22 May 2008 19:39:12 +0000 (19:39 +0000)]
sol2-10.h (SUBTARGET_RETURN_IN_MEMORY): Undefine it before the redeclaration.
2008-05-22 Kai Tietz <kai.tietz@onevision.com>
* config/i386/sol2-10.h (SUBTARGET_RETURN_IN_MEMORY): Undefine
it before the redeclaration.
From-SVN: r135776
Anatoly Sokolov [Thu, 22 May 2008 18:59:15 +0000 (22:59 +0400)]
avr.c (get_sequence_length): Add new function.
* config/avr/avr.c (get_sequence_length): Add new function.
(expand_prologue, expand_epilogue): Remove duplicate code.
From-SVN: r135775
Andrew Haley [Thu, 22 May 2008 16:20:55 +0000 (16:20 +0000)]
re PR libgcj/35020 (Class.getSimpleName() differs from Sun Java)
2008-05-22 Andrew Haley <aph@redhat.com>
PR libgcj/35020
* java/lang/Class.java (getSimpleName): Import from GNU Classpath.
From-SVN: r135771
Rafael Avila de Espindola [Thu, 22 May 2008 15:49:30 +0000 (15:49 +0000)]
see.c (see_pre_insert_extensions): Use copy_rtx to avoid invalid rtx sharing.
* see.c (see_pre_insert_extensions): Use copy_rtx to avoid invalid rtx
sharing.
* gcc.c-torture/compile/
20080522-1.c: New testcase.
From-SVN: r135770
Richard Guenther [Thu, 22 May 2008 14:33:21 +0000 (14:33 +0000)]
20080522-1.c: New testcase.
2008-05-22 Richard Guenther <rguenther@suse.de>
* gcc.c-torture/execute/
20080522-1.c: New testcase.
From-SVN: r135768
H.J. Lu [Thu, 22 May 2008 12:43:16 +0000 (12:43 +0000)]
defaults.h (UNITS_PER_SIMD_WORD): Add scalar mode as argument.
2008-05-22 H.J. Lu <hongjiu.lu@intel.com>
* defaults.h (UNITS_PER_SIMD_WORD): Add scalar mode as argument.
* doc/tm.texi (UNITS_PER_SIMD_WORD): Likewise.
* tree-vect-analyze.c (vect_compute_data_ref_alignment): Replace
UNITS_PER_SIMD_WORD with GET_MODE_SIZE (TYPE_MODE (vectype)).
(vect_update_misalignment_for_peel): Likewise.
(vector_alignment_reachable_p): Likewise.
* tree-vect-transform.c (vectorizable_load): Likewise.
* tree-vectorizer.c (vect_supportable_dr_alignment): Likewise.
* tree-vectorizer.c (get_vectype_for_scalar_type): Pass mode of
scalar_type to UNITS_PER_SIMD_WORD.
* config/arm/arm.h (UNITS_PER_SIMD_WORD): Updated.
* config/i386/i386.h (UNITS_PER_SIMD_WORD): Likewise.
* config/mips/mips.h (UNITS_PER_SIMD_WORD): Likewise.
* config/rs6000/rs6000.h (UNITS_PER_SIMD_WORD): Likewise.
* config/sparc/sparc.h (UNITS_PER_SIMD_WORD): Likewise.
From-SVN: r135759
Paolo Carlini [Thu, 22 May 2008 11:54:41 +0000 (11:54 +0000)]
dr781.cc: Add test variable.
2008-05-22 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/26_numerics/complex/dr781.cc: Add test variable.
From-SVN: r135758
Paolo Carlini [Thu, 22 May 2008 11:44:00 +0000 (11:44 +0000)]
complex (proj(const std::complex<>&), proj(_Tp)): Add per DR 781.
2008-05-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/complex (proj(const std::complex<>&), proj(_Tp)):
Add per DR 781.
* include/tr1_impl/complex(polar(const _Tp&, const _Up&)): Move to...
* include/tr1/complex: ... here.
* doc/xml/manual/intro.xml: Add an entry for DR 781.
* testsuite/26_numerics/complex/dr781.cc: Add.
* acinclude.m4 ([GLIBCXX_ENABLE_C99]): Update.
* configure: Regenerate.
From-SVN: r135757
Ira Rosen [Thu, 22 May 2008 10:39:44 +0000 (10:39 +0000)]
re PR tree-optimization/36293 (ICE or wrong code in vector-strided gap tests)
PR tree-optimization/36293
* tree-vect-transform.c (vect_transform_strided_load): Don't check
if the first load must be skipped because of a gap.
From-SVN: r135755
Richard Guenther [Thu, 22 May 2008 10:32:55 +0000 (10:32 +0000)]
tree-dfa.c (refs_may_alias_p): Exit early if possible.
2008-05-22 Richard Guenther <rguenther@suse.de>
* tree-dfa.c (refs_may_alias_p): Exit early if possible. Handle
more cases of offset disambiguation that is possible if
strict-aliasing rules apply.
* tree-ssa-loop-im.c (mem_refs_may_alias_p): Use refs_may_alias_p
for basic offset and type-based disambiguation.
* gcc.dg/tree-ssa/alias-18.c: New testcase.
From-SVN: r135754
Arnaud Charlet [Thu, 22 May 2008 09:24:10 +0000 (09:24 +0000)]
slice5.adb: New test.
* gnat.dg/slice5.adb: New test.
* gnat.dg/notnot.adb: New test.
* gnat.dg/tf_interface_1.ad[sb]: New test.
* gnat.dg/const1.adb: New test.
* gnat.dg/parameterlessfunc.adb: New test.
* gnat.dg/specs/interface5.ads: New test.
* gnat.dg/specs/cpp_assignment.ads: New test.
From-SVN: r135753
Nathan Sidwell [Thu, 22 May 2008 06:31:33 +0000 (06:31 +0000)]
* lib/dg-pch.exp (dg-pch): Fix if bracing.
From-SVN: r135752
H.J. Lu [Thu, 22 May 2008 05:28:19 +0000 (05:28 +0000)]
i386.c (ix86_expand_vector_init_one_var): Use ix86_expand_vector_set on V16QImode for SSE4.1.
gcc/
2008-05-21 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_expand_vector_init_one_var): Use
ix86_expand_vector_set on V16QImode for SSE4.1.
gcc/testsuite/
2008-05-21 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/m128-check.h (ARRAY_SIZE): New.
(CHECK_EXP): Use it.
* gcc.target/i386/set-v16qi-3.h: New.
* gcc.target/i386/sse2-set-v16qi-3.c: Likewise.
* gcc.target/i386/sse4_1-set-v16qi-3.c: Likewise.
From-SVN: r135750
Tom Tromey [Thu, 22 May 2008 00:26:36 +0000 (00:26 +0000)]
c.opt (Wimport): Mark as undocumented.
* c.opt (Wimport): Mark as undocumented.
* doc/invoke.texi (Option Summary): Don't mention -Wimport or
-Wno-import.
(Warning Options): Likewise.
* doc/cppopts.texi: Don't mention -Wimport.
From-SVN: r135747
GCC Administrator [Thu, 22 May 2008 00:18:10 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r135745
Sebastian Pop [Wed, 21 May 2008 23:13:00 +0000 (23:13 +0000)]
re PR middle-end/36286 (ICE with -ftree-loop-linear and -O1 and above)
2008-05-21 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/36286
PR tree-optimization/36287
* lambda-code.c (build_access_matrix): Do not use the loop->num
for computing the number of induction variables: use the loop depth
instead.
* testsuite/gcc.dg/tree-ssa/pr36287.c: New.
* testsuite/gfortran.dg/pr36286.f90: New.
From-SVN: r135741
Tom Tromey [Wed, 21 May 2008 21:52:57 +0000 (21:52 +0000)]
re PR preprocessor/27777 (Bad diagnostic emission when #error contains a trigraph)
gcc/testsuite
PR preprocessor/27777:
* gcc.dg/cpp/pr27777.c: New file.
libcpp
PR preprocessor/27777:
* lex.c (cpp_output_line_to_string): New function.
* internal.h (_cpp_begin_message): Don't declare.
* errors.c (_cpp_begin_message): Now static.
* include/cpplib.h (cpp_output_line_to_string): Declare.
* directives.c (do_diagnostic): Rewrote. Use
cpp_output_line_to_string. Don't use _cpp_begin_message.
From-SVN: r135740
Paolo Carlini [Wed, 21 May 2008 20:46:16 +0000 (20:46 +0000)]
bitset (bitset<>::bitset(const char*)): Add per DR 778.
2008-05-21 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/bitset (bitset<>::bitset(const char*)): Add per DR 778.
(bitset<>::_M_copy_from_ptr): Add.
(bitset<>::_M_copy_from_string): Forward to the latter.
* doc/xml/manual/intro.xml: Add an entry for DR 778.
* testsuite/23_containers/bitset/cons/2.cc: Add.
From-SVN: r135738
Paolo Carlini [Wed, 21 May 2008 20:13:47 +0000 (20:13 +0000)]
lwg-active.html: Update to Revision R56.
2008-05-21 Paolo Carlini <paolo.carlini@oracle.com>
* doc/html/ext/lwg-active.html: Update to Revision R56.
* doc/html/ext/lwg-closed.html: Likewise.
* doc/html/ext/lwg-defects.html: Likewise.
From-SVN: r135737
Jakub Jelinek [Wed, 21 May 2008 19:57:06 +0000 (21:57 +0200)]
re PR c++/36023 (ICE with cast to variable-sized object)
PR c++/36023
* cp-tree.h (check_array_initializer): New prototype.
* decl.c (check_array_initializer): New function.
(check_initializer): Call it.
* semantics.c (finish_compound_literal): Call it for ARRAY_TYPEs.
* g++.dg/ext/complit10.C: New test.
From-SVN: r135735
Jakub Jelinek [Wed, 21 May 2008 19:56:03 +0000 (21:56 +0200)]
re PR c++/36023 (ICE with cast to variable-sized object)
PR c++/36023
* cp-tree.h (check_array_initializer): New prototype.
* decl.c (check_array_initializer): New function.
(check_initializer): Call it.
* semantics.c (finish_compound_literal): Call it for ARRAY_TYPEs.
* g++.dg/ext/complit10.C: New test.
From-SVN: r135734
Kai Tietz [Wed, 21 May 2008 19:36:28 +0000 (19:36 +0000)]
cygming.h (ASM_OUTPUT_LABELREF): Honor option -f(no-)leading-underscore.
2008-05-21 Kai Tietz <kai.tietz@onevision.com>
PR/36280
* config/i386/cygming.h (ASM_OUTPUT_LABELREF): Honor
option -f(no-)leading-underscore.
From-SVN: r135733
H.J. Lu [Wed, 21 May 2008 19:00:47 +0000 (19:00 +0000)]
i386.c (ix86_expand_vector_init_general): Use GET_MODE_NUNITS (mode).
2008-05-21 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_expand_vector_init_general): Use
GET_MODE_NUNITS (mode).
From-SVN: r135732
Janis Johnson [Wed, 21 May 2008 18:13:32 +0000 (18:13 +0000)]
* gfortran.dg/nint_2.f90: XFAIL only when using -O0.
From-SVN: r135731
Peter Bergner [Wed, 21 May 2008 18:09:07 +0000 (13:09 -0500)]
invoke.texi: Add cpu_type's 464 and 464fp.
* doc/invoke.texi: Add cpu_type's 464 and 464fp.
(-mmulhw): Add 464 to description.
(-mdlmzb): Likewise.
* config.gcc: Handle --with-cpu=464 and --with-cpu=464fp.
* config/rs6000/rs6000.c (processor_target_table): Add 464 and
464fp entries.
* config/rs6000/rs6000.h (ASM_CPU_SPEC): Add 464 and 464fp support.
* config/rs6000/t-fprules (MULTILIB_MATCHES_FLOAT): Include -mcpu=464.
* config/rs6000/rs6000.md: Update comments for 464.
From-SVN: r135730
Janis Johnson [Wed, 21 May 2008 18:03:32 +0000 (18:03 +0000)]
sourcebuild.texi (Test Directives): Add dg-xfail-run-if.
gcc/
* doc/sourcebuild.texi (Test Directives): Add dg-xfail-run-if.
gcc/testsuite/
* lib/target-supports-dg.exp (dg-xfail-run-if): New.
* gcc.test-framework/dg-do-run-xrif-exp-F.c: New test.
* gcc.test-framework/dg-do-run-xrif-exp-P.c: New test.
* gcc.test-framework/dg-do-run-xrif-exp-XF.c: New test.
* gcc.test-framework/dg-do-run-xrif-exp-XP.c: New test.
* gcc.test-framework/dg-dot-run-xrif-exp-F.c: New test.
* gcc.test-framework/dg-dot-run-xrif-exp-P.c: New test.
* gcc.test-framework/dg-dot-run-xrif-exp-XF.c: New test.
* gcc.test-framework/dg-dot-run-xrif-exp-XP.c: New test.
* gcc.test-framework/test-framework.awk: Handle new tests.
From-SVN: r135729
H.J. Lu [Wed, 21 May 2008 17:45:50 +0000 (17:45 +0000)]
sse.md (vec_extractv4sf): Removed.
2008-05-21 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/sse.md (vec_extractv4sf): Removed.
(vec_extractv2df): Likewise.
(vec_extractv2di): Likewise.
(vec_extractv4si): Likewise.
(vec_extractv8hi): Likewise.
(vec_extractv16qi): Likewise.
(vec_extract<mode>): New.
From-SVN: r135728
H.J. Lu [Wed, 21 May 2008 17:09:32 +0000 (17:09 +0000)]
sse.md (vec_setv4sf): Removed.
2008-05-21 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/sse.md (vec_setv4sf): Removed.
(vec_setv2df): Likewise.
(vec_setv2di): Likewise.
(vec_setv4si): Likewise.
(vec_setv8hi): Likewise.
(vec_setv16qi): Likewise.
(vec_set<mode>): New.
From-SVN: r135726
H.J. Lu [Wed, 21 May 2008 16:57:05 +0000 (16:57 +0000)]
i386.c (ix86_expand_vector_init_general): Remove goto for vec_concat and vec_interleave.
2008-05-21 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_expand_vector_init_general): Remove
goto for vec_concat and vec_interleave.
From-SVN: r135725
H.J. Lu [Wed, 21 May 2008 16:56:14 +0000 (16:56 +0000)]
sse.md (vec_initv4sf): Removed.
2008-05-21 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/sse.md (vec_initv4sf): Removed.
(vec_initv2df): Likewise.
(vec_initv2di): Likewise.
(vec_initv4si): Likewise.
(vec_initv8hi): Likewise.
(vec_initv16qi): Likewise.
(vec_init<mode>): New.
From-SVN: r135724
Francois-Xavier Coudert [Wed, 21 May 2008 16:01:08 +0000 (16:01 +0000)]
re PR fortran/36257 (SPREAD gives wrong results with array CHARACTER parameters)
PR fortran/36257
* gfortran.dg/char_length_12.f90: New test.
* iresolve.c (check_charlen_present): Don't force the rank to 1.
From-SVN: r135723
Joseph Myers [Wed, 21 May 2008 15:40:48 +0000 (16:40 +0100)]
* collect2.c (find_a_file): Use IS_ABSOLUTE_PATH.
From-SVN: r135721
Tom Tromey [Wed, 21 May 2008 15:00:59 +0000 (15:00 +0000)]
symtab.h (HT_ALLOCED): Remove.
libcpp
* include/symtab.h (HT_ALLOCED): Remove.
(ht_purge): Declare.
* symtab.c (DELETED): New define.
(ht_lookup): Update comment.
(ht_lookup_with_hash): Handle deleted entries. Remove HT_ALLOCED
code. Use subobject allocator for strings, if it exists.
(ht_expand): Handle deleted entries.
(ht_forall): Likewise.
(ht_purge): New function.
(ht_dump_statistics): Print deletion statistics.
gcc
* ggc-zone.c (lookup_page_table_if_allocated): New function.
(zone_find_object_offset): Likewise.
(gt_ggc_m_S): Likewise.
(highest_bit): Likewise.
* ggc-page.c (gt_ggc_m_S): New function.
* stringpool.c (string_stack): Remove.
(init_stringpool): Update.
(ggc_alloc_string): Use ggc_alloc.
(maybe_delete_ident): New function.
(ggc_purge_stringpool): Likewise.
(gt_ggc_m_S): Remove.
* ggc-common.c (ggc_protect_identifiers): New global.
(ggc_mark_roots): Call ggc_purge_stringpool. Use
ggc_protect_identifiers.
* ggc.h (ggc_protect_identifiers): Declare.
(gt_ggc_m_S): Update.
(ggc_purge_stringpool): Declare.
* toplev.c (compile_file): Set and reset ggc_protect_identifiers.
* gengtype.c (write_types_process_field) <TYPE_STRING>: Remove
special case.
(write_root): Cast gt_ggc_m_S to gt_pointer_walker.
gcc/cp
* mangle.c (save_partially_mangled_name): Remove.
(restore_partially_mangled_name): Likewise.
(write_encoding): Update.
(write_unqualified_name): Likewise.
(start_mangling): Always use name_obstack. Remove 'ident_p'
argument.
(get_identifier_nocopy): Remove.
(finish_mangling_internal): Rename from finish_mangling.
(finish_mangling): New function.
(finish_mangling_get_identifier): Likewise.
(partially_mangled_name, partially_mangled_name_len): Remove.
(mangle_decl_string): Change return type. Update.
(mangle_decl, mangle_type_string, mangle_special_for_type,
mangle_ctor_vtbl_for_type, mangle_thunk, mangle_guard_variable,
mangle_ref_init_variable): Update.
From-SVN: r135720
David S. Miller [Wed, 21 May 2008 09:38:40 +0000 (09:38 +0000)]
config.gcc (sparc-*-linux*): Always include sparc/t-linux in tmake_file.
* config.gcc (sparc-*-linux*): Always include sparc/t-linux in
tmake_file.
From-SVN: r135713
Eric Botcazou [Wed, 21 May 2008 09:22:09 +0000 (09:22 +0000)]
cfgexpand.c (tree_expand_cfg): Zap the EH throw statement table once finished.
* cfgexpand.c (tree_expand_cfg): Zap the EH throw statement table
once finished.
From-SVN: r135712
Thomas Quinot [Wed, 21 May 2008 07:01:56 +0000 (07:01 +0000)]
New file.
From-SVN: r135709
Nathan Sidwell [Wed, 21 May 2008 06:31:37 +0000 (06:31 +0000)]
memops-asm.c: Set inside_main.
* gcc.c-torture/execute/builtins/memops-asm.c: Set inside_main.
* lib/gcc-dg.exp (cleanup-saved-temps): Add optional list of
suffixes not to delete.
* gcc.dg/pch/save-temps-1.c: Don't delete ".s" temp.
* g++.dg/pch/pch.C: Likewise.
* g++.old-deja/g++.pt/static11.C: Replace xfail by target requirement.
* lib/dg-pch.exp (dg-pch): Don't expect .s files if there are
dg-errors expected.
From-SVN: r135708
David Daney [Wed, 21 May 2008 03:49:03 +0000 (03:49 +0000)]
re PR libgcj/36252 (OutOfMemoryError on simple text conversion.)
2008-05-20 David Daney <ddaney@avtrex.com>
PR libgcj/36252
* java/lang/natString.ccn: Add
#include <java/io/CharConversionException.h>.
(init (byte[], int, int, String)): Catch and ignore
CharConversionException. Break out of conversion loop
on incomplete input.
* testsuite/libjava.lang/PR36252.java: New test.
* testsuite/libjava.lang/PR36252.out: New file, its expected output.
* testsuite/libjava.lang/PR36252.jar: New file, its pre-compiled
jar file.
From-SVN: r135705
GCC Administrator [Wed, 21 May 2008 00:17:42 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r135701
Janis Johnson [Wed, 21 May 2008 00:04:45 +0000 (00:04 +0000)]
re PR testsuite/20771 (Duplicate PCH test names)
PR testsuite/20771
* lib/dg-pch.exp: Move a flag in arguments to dg-test to differentiate
compile results for pch test lines in gcc.sum.
* gcc.dg/pch/counter-2.c: Add comments to dg-error directives to
make them unique in gcc.sum.
* gcc.dg/pch/valid-1.c: Ditto.
* gcc.dg/pch/valid-2.c: Ditto.
* gcc.dg/pch/valid-3.c: Ditto.
* gcc.dg/pch/warn-1.c: Same for dg-warning.
From-SVN: r135696
Andy Hutchinson [Wed, 21 May 2008 00:01:30 +0000 (00:01 +0000)]
* gcc.dg/array-quals-1.c: xfail read only section check for avr target.
From-SVN: r135695
Andy Hutchinson [Tue, 20 May 2008 23:56:28 +0000 (23:56 +0000)]
re PR testsuite/34889 (gcc.c-torture/execute/builtins/pr23484-chk.c fails on 16 bit integer platforms)
PR testsuite/34889
* gcc.c-torture/execute/builtins/pr23484-chk.c : Correct test for 16bit int target.
From-SVN: r135694
Andy Hutchinson [Tue, 20 May 2008 23:51:23 +0000 (23:51 +0000)]
ifc-
20040816-1.c: signal.h not required.
* gcc.dg/tree-ssa/ifc-
20040816-1.c : signal.h not required.
* gcc.c-torture/execute/ieee/fp-cmp-1.c : Do not include signal.h if SIGNAL_SUPPRESS.
* gcc.c-torture/execute/ieee/fp-cmp-2.c : Ditto.
* gcc.c-torture/execute/ieee/fp-cmp-3.c : Ditto.
From-SVN: r135693
Andy Hutchinson [Tue, 20 May 2008 23:46:09 +0000 (23:46 +0000)]
* gcc.dg/builtins-config.h: AVR does not have C99 runtime.
From-SVN: r135692
Janis Johnson [Tue, 20 May 2008 23:31:40 +0000 (23:31 +0000)]
re PR testsuite/22523 (template/inline1.C does not test correctly on all targerts)
PR testsuite/22523
* g++.dg/template/inline1.C: Handle syntax for more assemblers.
From-SVN: r135691
Janis Johnson [Tue, 20 May 2008 23:29:56 +0000 (23:29 +0000)]
scandump.exp (scan-dump): Handle non-existent dump file.
* lib/scandump.exp (scan-dump): Handle non-existent dump file.
(scan-dump-times): Ditto.
(scan-dump-not): Ditto.
(scan-dump-dem): Ditto.
(scan-dump-dem-not): Ditto.
From-SVN: r135690
Janis Johnson [Tue, 20 May 2008 23:28:34 +0000 (23:28 +0000)]
bitfield-1.mm: XFAIL for ICE...
* obj-c++.dg/bitfield-1.mm: XFAIL for ICE; move dg-options after other
test directives; use dg-prune-output instead of dg-excess-errors for
possible message to ignore; adjust line numbers for messages.
From-SVN: r135689
Janis Johnson [Tue, 20 May 2008 23:26:31 +0000 (23:26 +0000)]
comp-types-10.mm: XFAIL for ICE.
* obj-c++.dg/comp-types-10.mm: XFAIL for ICE.
* obj-c++.dg/try-catch-9.mm: XFAILfor ICE, move dg-options after
other test directives.
From-SVN: r135687
Janis Johnson [Tue, 20 May 2008 23:25:13 +0000 (23:25 +0000)]
try-catch-2.mm: Move dg-options after dg-xfail-if.
* obj-c++.dg/try-catch-2.mm: Move dg-options after dg-xfail-if.
* obj-c++.dg/encode-8.mm: Move dg-options after dg-do.
* obj-c++.dg/bitfield-4.mm: Ditto; use dg-prune-output instead of
dg-excess-errors for possible additional message.
* obj-c++.dg/layout-1.mm: Use dg-prune-output instead of
dg-excess-errors for possible additional message.
From-SVN: r135686
Janis Johnson [Tue, 20 May 2008 23:23:48 +0000 (23:23 +0000)]
* g++.dg/ext/vector14.C: Ignore a possible warning.
From-SVN: r135685
David Daney [Tue, 20 May 2008 23:13:13 +0000 (23:13 +0000)]
mips.md (UNSPEC_SYNC_NEW_OP_12, [...]): New define_constants.
2008-05-20 David Daney <ddaney@avtrex.com>
* config/mips/mips.md (UNSPEC_SYNC_NEW_OP_12,
UNSPEC_SYNC_OLD_OP_12,
UNSPEC_SYNC_EXCHANGE_12): New define_constants.
(UNSPEC_SYNC_EXCHANGE, UNSPEC_MEMORY_BARRIER,
UNSPEC_SET_GOT_VERSION,
UNSPEC_UPDATE_GOT_VERSION): Renumber.
(optab, insn): Add 'plus' and 'minus' to define_code_attr.
(atomic_hiqi_op): New define_code_iterator.
(sync_compare_and_swap<mode>): Call
mips_expand_atomic_qihi instead of
mips_expand_compare_and_swap_12.
(compare_and_swap_12): Use MIPS_COMPARE_AND_SWAP_12 instead of
MIPS_COMPARE_AND_SWAP_12_0. Pass argument to
MIPS_COMPARE_AND_SWAP_12.
(sync_<optab><mode>, sync_old_<optab><mode>,
sync_new_<optab><mode>, sync_nand<mode>, sync_old_nand<mode>,
sync_new_nand<mode>): New define_expands for HI and QI mode
operands.
(sync_<optab>_12, sync_old_<optab>_12, sync_new_<optab>_12,
sync_nand_12, sync_old_nand_12, sync_new_nand_12): New insns.
(sync_lock_test_and_set<mode>): New define_expand for HI and QI
modes.
(test_and_set_12): New insn.
(sync_old_add<mode>, sync_new_add<mode>, sync_old_<optab><mode>,
sync_new_<optab><mode>, sync_old_nand<mode>,
sync_new_nand<mode>, sync_lock_test_and_set<mode>): Add early
clobber to operand 0 for SI and DI mode insns.
* config/mips/mips-protos.h (mips_gen_fn_6, mips_gen_fn_5,
mips_gen_fn_4): New typedefs.
(mips_gen_fn_ptrs): Define new union type.
(mips_expand_compare_and_swap_12): Remove declaration.
(mips_expand_atomic_qihi): Declare function.
* config/mips/mips.c (mips_expand_compare_and_swap_12): Rename to...
(mips_expand_atomic_qihi): ... this. Use new generator function
parameter.
* config/mips/mips.h (MIPS_COMPARE_AND_SWAP_12): Add OPS parameter.
(MIPS_COMPARE_AND_SWAP_12_0): Delete macro.
(MIPS_COMPARE_AND_SWAP_12_ZERO_OP,
MIPS_COMPARE_AND_SWAP_12_NONZERO_OP,
MIPS_SYNC_OP_12, MIPS_SYNC_OP_12_NOT_NOP,
MIPS_SYNC_OP_12_NOT_NOT, MIPS_SYNC_OLD_OP_12,
MIPS_SYNC_OLD_OP_12_NOT_NOP, MIPS_SYNC_OLD_OP_12_NOT_NOP_REG,
MIPS_SYNC_OLD_OP_12_NOT_NOT, MIPS_SYNC_OLD_OP_12_NOT_NOT_REG,
MIPS_SYNC_NEW_OP_12, MIPS_SYNC_NEW_OP_12_NOT_NOP,
MIPS_SYNC_NEW_OP_12_NOT_NOT, MIPS_SYNC_EXCHANGE_12,
MIPS_SYNC_EXCHANGE_12_ZERO_OP,
MIPS_SYNC_EXCHANGE_12_NONZERO_OP): New macros.
From-SVN: r135684
H.J. Lu [Tue, 20 May 2008 21:39:45 +0000 (21:39 +0000)]
i386.c (ix86_expand_vector_init_one_nonzero): Add the missing break.
2008-05-20 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_expand_vector_init_one_nonzero): Add
the missing break.
From-SVN: r135682
Anatoly Sokolov [Tue, 20 May 2008 21:23:08 +0000 (01:23 +0400)]
avr.h (machine_function): Add 'is_OS_main' field.
* config/avr/avr.h (machine_function): Add 'is_OS_main' field.
* config/avr/avr.c (avr_OS_main_function_p): Add new function.
(avr_attribute_table): Add 'OS_main' function attribute.
(avr_regs_to_save, expand_prologue, expand_epilogue): Handle
functions with 'OS_main' attribute.
From-SVN: r135681
Samuel Tardieu [Tue, 20 May 2008 20:59:44 +0000 (20:59 +0000)]
modular.adb: Remove test...
gcc/testsuite/
* gnat.dg/modular.adb: Remove test, gnat.dg/modular1.adb already
checks that the bug is fixed and is more concise.
From-SVN: r135679
Samuel Tardieu [Tue, 20 May 2008 20:45:49 +0000 (20:45 +0000)]
re PR ada/35791 ([Ada] V-table messed up with interface composition)
gcc/testsuite/
PR ada/35791
* gnat.dg/check_displace_generation.adb: New.
From-SVN: r135677
Richard Guenther [Tue, 20 May 2008 20:40:23 +0000 (20:40 +0000)]
re PR middle-end/35204 (crash by too deep recursion in DFS tree-ssa-sccvn.c:1898)
2008-05-20 Richard Guenther <rguenther@suse.de>
PR tree-optimization/35204
* tree-ssa-sccvn.c (extract_and_process_scc_for_name): New
helper, split out from ...
(DFS): ... here. Make the DFS walk non-recursive.
From-SVN: r135676
Samuel Tardieu [Tue, 20 May 2008 20:24:33 +0000 (20:24 +0000)]
re PR ada/30740 (Improper semantics in gnat's compilation of certain expressions involving modular arithmetic)
gcc/testsuite/
PR ada/30740
* gnat.dg/modular.adb: New test.
From-SVN: r135675
Sebastian Pop [Tue, 20 May 2008 19:17:12 +0000 (19:17 +0000)]
re PR tree-optimization/36181 (Simple for loop generates ICE with -ftree-parallelize-loops=2)
2008-05-20 Sebastian Pop <sebastian.pop@amd.com>
Jan Sjodin <jan.sjodin@amd.com>
PR tree-optimization/36181
* tree-parloops.c (loop_has_vector_phi_nodes): New.
(parallelize_loops): Don't parallelize when the loop has vector
phi nodes.
* gcc.dg/tree-ssa/pr36181.c: New.
From-SVN: r135673
Jan Sjodin [Tue, 20 May 2008 19:11:56 +0000 (19:11 +0000)]
tree-loop-linear.c (gather_interchange_stats): Look in the access matrix...
2008-05-20 Jan Sjodin <jan.sjodin@amd.com>
Sebastian Pop <sebastian.pop@amd.com>
* tree-loop-linear.c (gather_interchange_stats): Look in the access matrix,
and never look at the tree representation of the memory accesses.
(linear_transform_loops): Computes parameters and access matrices.
* tree-data-ref.c (compute_data_dependences_for_loop): Returns false when fails.
(access_matrix_get_index_for_parameter): New.
* tree-data-ref.h (struct access_matrix): New.
(AM_LOOP_NEST_NUM, AM_NB_INDUCTION_VARS, AM_PARAMETERS, AM_MATRIX,
AM_NB_PARAMETERS, AM_CONST_COLUMN_INDEX, AM_NB_COLUMNS,
AM_GET_SUBSCRIPT_ACCESS_VECTOR, AM_GET_ACCESS_MATRIX_ELEMENT,
am_vector_index_for_loop): New.
(struct data_reference): Add field access_matrix.
(DR_ACCESS_MATRIX): New.
(compute_data_dependences_for_loop): Update declaration.
(lambda_collect_parameters, lambda_compute_access_matrices): Declared.
* lambda.h (lambda_vector_vec_p): Declared.
* lambda-code.c: Depend on pointer-set.h.
(lambda_collect_parameters_from_af, lambda_collect_parameters,
av_for_af_base, av_for_af, build_access_matrix,
lambda_compute_access_matrices): New.
* Makefile.in (lambda-code.o): Depend on pointer-set.h.
Co-Authored-By: Sebastian Pop <sebastian.pop@amd.com>
From-SVN: r135672
Uros Bizjak [Tue, 20 May 2008 19:01:46 +0000 (21:01 +0200)]
re PR testsuite/36057 (struct-layout-1_generate.c uses non-ISO C '%n$' operand number formats)
PR testsuite/36057
* g++.dg/compat/struct-layout-1_generate.c (DG_OPTIONS): Remove.
(const char *dg_options): New array.
(switchfiles): Loop through dg_options array to generate dg-options
directives. Remove numbered arguments usage from fprintf
format strings.
From-SVN: r135671
Paolo Carlini [Tue, 20 May 2008 18:11:34 +0000 (18:11 +0000)]
PR c++/33979 (partial)
2008-05-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/33979 (partial)
* include/tr1_impl/functional_hash.h (hash<char16_t>,
hash<char32_t>): Add specializations.
* include/tr1_impl/type_traits (is_integral<char16_t>,
is_integral<char32_t>): Likewise.
* include/std/limits (numeric_limits<char16_t>,
numeric_limits<char32_t>): Likewise.
* src/limits_c++0x.cc: Add.
* src/Makefile.am: Update.
* testsuite/20_util/hash/requirements/explicit_instantiation.cc:
Update.
* testsuite/20_util/is_integral/value.cc: New.
* testsuite/20_util/is_integral/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_integral/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/18_support/numeric_limits/char16_32_t.cc: Likewise.
* config/abi/pre/gnu.ver: Export new numeric_limits symbols at
GLIBCXX_3.4.11.
* configure: Regenerate.
* src/Makefile.in: Likewise.
* config.h.in: Likewise.
From-SVN: r135668
Joseph Myers [Tue, 20 May 2008 16:21:31 +0000 (17:21 +0100)]
install.texi2html: Generate gcc-vers.texi in $DESTDIR not $SOURCEDIR/include.
* doc/install.texi2html: Generate gcc-vers.texi in $DESTDIR not
$SOURCEDIR/include.
From-SVN: r135664
Jan Sjodin [Tue, 20 May 2008 16:05:09 +0000 (16:05 +0000)]
re PR middle-end/36206 (ice for legal code with -O3)
2008-05-20 Jan Sjodin <jan.sjodin@amd.com>
Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/36206
* tree-scalar-evolution.c: Remove enum INSERT_SUPERLOOP_CHRECS,
FOLD_CONVERSIONS.
(instantiate_scev_1): Rename flags to fold_conversions.
Do not check for INSERT_SUPERLOOP_CHRECS, keep SSA_NAMEs defined
outeside instantiation_loop.
* tree-chrec.h (evolution_function_is_affine_in_loop): New.
(evolution_function_is_affine_or_constant_p): Removed.
* tree-data-ref.c (dr_analyze_indices): Replace resolve_mixers with
instantiate_scev.
(analyze_siv_subscript): Pass in the loop nest number.
Call evolution_function_is_affine_in_loop instead of
evolution_function_is_affine_p.
(analyze_overlapping_iterations): Pass in the loop nest number.
* tree-chrec.h (chrec_fold_op): New.
* tree-data-ref.c (initialize_matrix_A): Traverse NOP_EXPR, PLUS_EXPR, and
other trees.
* testsuite/gfortran.dg/pr36206.f: New.
Co-Authored-By: Sebastian Pop <sebastian.pop@amd.com>
From-SVN: r135663
Nathan Sidwell [Tue, 20 May 2008 15:22:31 +0000 (15:22 +0000)]
c-incpath.c (INO_T_EQ): Do not define on non-inode systems.
* c-incpath.c (INO_T_EQ): Do not define on non-inode systems.
(DIRS_EQ): New.
(remove_duplicates): Do not set inode on non-inode systems. Use
DIRS_EQ.
From-SVN: r135661
Arnaud Charlet [Tue, 20 May 2008 14:02:20 +0000 (14:02 +0000)]
gen_disp.ad[sb]: New test.
* gnat.dg/gen_disp.ad[sb]: New test.
* gnat.dg/specs/empty_variants.ads: Adjust.
From-SVN: r135658
Sandra Loosemore [Tue, 20 May 2008 13:32:47 +0000 (09:32 -0400)]
config.gcc (tm_file): Update comments about relative pathnames.
2008-05-20 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config.gcc (tm_file): Update comments about relative pathnames.
From-SVN: r135656
Arnaud Charlet [Tue, 20 May 2008 13:03:26 +0000 (15:03 +0200)]
Resync.
From-SVN: r135654
Arnaud Charlet [Tue, 20 May 2008 13:00:35 +0000 (13:00 +0000)]
Minor reformatting.
Update comments.
From-SVN: r135653
Arnaud Charlet [Tue, 20 May 2008 12:59:41 +0000 (12:59 +0000)]
s-taspri-vxworks.ads (Task_Address, [...]): New type/constant.
* s-taspri-vxworks.ads (Task_Address, Task_Address_Size): New
type/constant.
* g-socthi-vxworks.ads: Update to latest socket changes.
* a-caldel-vms.adb: Resync with a-caldel spec.
From-SVN: r135652
Robert Dewar [Tue, 20 May 2008 12:52:53 +0000 (14:52 +0200)]
g-byorma.adb, [...]: Update comments.
2008-05-20 Robert Dewar <dewar@adacore.com>
* g-byorma.adb, gnatlink.adb, prepcomp.adb, sinfo.ads,
sem_ch12.adb: Update comments. Minor reformatting.
* exp_ch2.adb: Typo
* s-unstyp.ads: Fixed some typos in comments.
From-SVN: r135651
Ed Schonberg [Tue, 20 May 2008 12:52:41 +0000 (14:52 +0200)]
2008-05-20 Ed Schonberg <schonberg@adacore.com>
* exp_ch7.adb
(Expand_Ctrl_Function_Call): Do not attach result to finalization list
if expression is aggregate component.
From-SVN: r135650
Arnaud Charlet [Tue, 20 May 2008 12:52:23 +0000 (14:52 +0200)]
s-winext.ads: Replace representation clause by pragma Pack.
* s-winext.ads: Replace representation clause by pragma Pack. Gives
equivalent representation, but has the advantage of allowing
compilation of this file under 64 bits platforms.
* s-os_lib.adb (Normalize_Pathname): Mark Cur_Dir constant.
* s-osinte-irix.ads: (Alternate_Stack_Size): Add dummy declaration.
* adaint.c:
Don't define dummy implementation of convert_addresses on ppc-linux.
From-SVN: r135649
Bob Duff [Tue, 20 May 2008 12:52:09 +0000 (14:52 +0200)]
2008-05-20 Bob Duff <duff@adacore.com>
* a-rttiev.adb
(Set_Handler): Remove code from both of these that implements
RM-D.15(15/2), because it causes a race condition and potential
deadlock.
(Process_Queued_Events): Add comment explaining "exception when others
=> null". Add clarifying ".all", even though implicit .all is legal
here.
From-SVN: r135648
Robert Dewar [Tue, 20 May 2008 12:51:51 +0000 (14:51 +0200)]
vms_data.ads: Add entry for -gnatr Put GNAT SYNC section in proper alpha order Add VMS...
2008-05-20 Robert Dewar <dewar@adacore.com>
Vincent Celier <celier@adacore.com>
* vms_data.ads: Add entry for -gnatr
Put GNAT SYNC section in proper alpha order
Add VMS qualifier /DISPLAY_PROGRESS equivalent to gnatmake switch -d
* gnat_ugn.texi: Add documentation for new gnatname switch --and
Update the style checks section
Add documentation of -gnatr
Add to the "Adding the Results of Compiler Checks to gnatcheck Output"
subsection the explanation how compiler checks should be disabled for
gnatcheck.
Update the list of Ada 95 reserved words used by in the project language
Add documentation for project qualifiers.
Document that abstract projects may be extended by different projects in
the same project tree.
Add documentation for gnatmake switch -d
* ug_words: Add -gnatyy VMS equivalence string.
Add entry for -gnatr
From-SVN: r135647
Thomas Quinot [Tue, 20 May 2008 12:51:40 +0000 (14:51 +0200)]
uintp.adb, urealp.adb: Replace calls to Increment_Last + Set with Append.
2008-05-20 Thomas Quinot <quinot@adacore.com>
* uintp.adb, urealp.adb: Replace calls to Increment_Last + Set with
Append.
From-SVN: r135646
Ed Schonberg [Tue, 20 May 2008 12:51:29 +0000 (14:51 +0200)]
2008-05-20 Ed Schonberg <schonberg@adacore.com>
* sprint.adb
(Print_Itype): Do not modify the sloc of the component type of a
(packed) array itype, because it is an unrelated type whose source
location is independent of the point of creation of the itype itself.
From-SVN: r135645
Robert Dewar [Tue, 20 May 2008 12:51:17 +0000 (14:51 +0200)]
sem_res.adb (Resolve_Op_Not): Warn on double negation
2008-05-20 Robert Dewar <dewar@adacore.com>
* sem_res.adb (Resolve_Op_Not): Warn on double negation
From-SVN: r135644
Ed Schonberg [Tue, 20 May 2008 12:51:06 +0000 (14:51 +0200)]
2008-05-20 Ed Schonberg <schonberg@adacore.com>
* sem_eval.adb
(Eval_Slice): Warn when a slice whose discrete range is a subtype name
denotes the whole array of its prefix.
From-SVN: r135643
Thomas Quinot [Tue, 20 May 2008 12:50:52 +0000 (14:50 +0200)]
sem_dist.ads, [...] (Is_RACW_Stub_Type_Operation): New subprogram.
2008-05-20 Thomas Quinot <quinot@adacore.com>
* sem_dist.ads, sem_dist.adb (Is_RACW_Stub_Type_Operation): New
subprogram.
* sem_type.adb
(Add_One_Interp): Ignore any interpretation that is a primitive
operation of an RACW stub type (these primitives are only executed
through dispatching, never through static calls).
(Collect_Interps): When only one interpretation has been found, set N's
Entity and Etype to that interpretation, otherwise Entity and Etype may
still refer to an interpretation that was ignored by Add_One_Interp,
in which case would end up with being marked as not overloaded but with
an Entity attribute not pointing to its (unique) correct interpretation.
From-SVN: r135642
Ed Schonberg [Tue, 20 May 2008 12:50:43 +0000 (14:50 +0200)]
2008-05-20 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb
(Note_Redundant_Use): Diagnose a redundant use within a subprogram body
when there is a use clause for the same entity in the context.
(Analyze_Subprogram_Renaming): A renaming_as_body is legal if it is
created for a stream attribute of an abstract type or interface type.
From-SVN: r135641
Ed Schonberg [Tue, 20 May 2008 12:50:26 +0000 (14:50 +0200)]
2008-05-20 Ed Schonberg <schonberg@adacore.com>
Thomas Quinot <quinot@adacore.com>
* sem_ch4.adb
(Try_Indexed_Call): Handle properly a construct of the form F(S) where
F is a parameterless function that returns an array, and S is a subtype
mark.
(Analyze_Call): Insert dereference when the prefix is a parameterless
function that returns an access to subprogram and the call has
parameters.
Reject a non-overloaded call whose name resolves to denote
a primitive operation of the stub type generated to support a remote
access-to-class-wide type.
From-SVN: r135640
Arnaud Charlet [Tue, 20 May 2008 12:50:26 +0000 (12:50 +0000)]
Makefile.in (GNATTOOLS2_FILES): Replaced by common-tools target in gcc/ada/Makefile.in
* Makefile.in (GNATTOOLS2_FILES): Replaced by common-tools target
in gcc/ada/Makefile.in
From-SVN: r135639
Javier Miranda [Tue, 20 May 2008 12:50:03 +0000 (14:50 +0200)]
2008-05-20 Javier Miranda <miranda@adacore.com>
Ed Schonberg <schonberg@adacore.com>
Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch3.adb
(Analyze_Object_Declaration): Fix over-conservative condition
restricting use of predefined assignment with tagged types that have
convention CPP.
(Analyze_Object_Declaration): Relax the check regarding deferred
constants declared in scopes other than packages since they can be
completed with pragma Import.
Add missing escaping of all-caps word 'CPP' in error messages.
(Build_Discriminated_Subtype): Do not inherit representation clauses
from parent type if subtype already carries them, because they are
inherited earlier during derivation and already include those that may
come from a partial view.
* sem_ch9.adb, sem_ch5.adb, sem_ch6.adb (Analyze_Subprogram_Body):
Check the declarations of a subprogram body for proper deferred
constant completion.
* sem_ch7.ads, sem_ch7.adb
(Inspect_Deferred_Constant_Completion): Moved to sem_util.
From-SVN: r135638
Thomas Quinot [Tue, 20 May 2008 12:49:41 +0000 (14:49 +0200)]
2008-05-20 Thomas Quinot <quinot@adacore.com>
* sem_cat.adb
(Set_Categorization_From_Scope): Do not set In_Remote_Types unless in
the visible part of the spec of a remote types unit.
(Validate_Remote_Access_Object_Type_Declaration):
New local subprogram Is_Valid_Remote_Object_Type, replaces
Is_Recursively_Limited_Private.
(Validate_RACW_Primitives): Enforce E.2.2(14) rules: the types of all
non-controlling formals (and the return type, even though this is not
explicit in the standard) must support external streaming.
(Validate_RCI_Subprogram_Declaration): Enforce E.2.3(14) rules: same
as above for of RAS types and RCI subprograms. (The return type is not
checked yet).
Update comments related to RACWs designating limited interfaces per
ARG ruling on AI05-060.
* sem_util.ads, sem_util.adb
(Is_Remote_Access_To_Class_Wide_Type): Only rely on Is_Remote_Types and
Is_Remote_Call_Interface to identify RACW types in a stable and
consistent way. We used to rely in this predicate on the privateness of
the designated type and its ancestors, but depending on the currently
visible private parts, this caused false negatives. We now uniformly
rely on checks made at the point where the RACW type is declared.
(Inspect_Deferred_Constant_Completion): Moved from Sem_Ch7.
From-SVN: r135637
Ed Schonberg [Tue, 20 May 2008 12:49:21 +0000 (14:49 +0200)]
re PR ada/17985 (GNAT accepts extension aggregate where expexted type is not extension)
2008-05-20 Ed Schonberg <schonberg@adacore.com>
* sem_aggr.adb: Update comments.
Improve previous change for PR ada/17985
From-SVN: r135636
Arnaud Charlet [Tue, 20 May 2008 12:49:20 +0000 (12:49 +0000)]
testint.adb: New test.
* gnat.dg/testint.adb: New test.
* gnat.dg/modular1.adb: New test.
* gnat.dg/test_iface_aggr.adb: New test.
* gnat.dg/specs/tag2.ads: Adjust.
From-SVN: r135635
Hristian Kirtchev [Tue, 20 May 2008 12:48:30 +0000 (14:48 +0200)]
2008-05-20 Hristian Kirtchev <kirtchev@adacore.com>
* par-ch9.adb
(P_Protected): Update the error message on missing "-gnat05" switch when
using interfaces in conjunction with protected types. Remove the
incorrect error message associated with the presence of "private" after
a "with".
From-SVN: r135634
Hristian Kirtchev [Tue, 20 May 2008 12:48:03 +0000 (14:48 +0200)]
2008-05-20 Hristian Kirtchev <kirtchev@adacore.com>
* par-ch3.adb
(P_Access_Definition): Change the error message when parsing "access
all" in Ada 95 mode. The message no longer forces the user to recompile
in 05 mode only to discover that anonymous access types are not allowed
to have "all".
From-SVN: r135633
Robert Dewar [Tue, 20 May 2008 12:47:49 +0000 (14:47 +0200)]
opt.ads (Treat_Restrictions_As_Warnings): New switch
2008-05-20 Robert Dewar <dewar@adacore.com>
* opt.ads (Treat_Restrictions_As_Warnings): New switch
* sem_prag.adb, par-prag.adb, restrict.ads: Implement flag
Treat_Restrictions_As_Warnings.
* switch-c.adb: Recognize new switch -gnatr
* usage.adb: Add line for -gnatr
From-SVN: r135632
Arnaud Charlet [Tue, 20 May 2008 12:47:34 +0000 (14:47 +0200)]
* Makefile.in
(common-tools): New rule, to avoid parallel build failure on gnat tools.
Reenable parallel builds on this Makefile.
* Make-lang.in: Update dependencies.
From-SVN: r135631
Tristan Gingold [Tue, 20 May 2008 12:47:13 +0000 (14:47 +0200)]
init.c: Enable stack probing on ppc-linux.
2008-05-20 Tristan Gingold <gingold@adacore.com>
* init.c: Enable stack probing on ppc-linux.
* tracebak.c: Add symbolic traceback for ppc-linux.
* system-linux-ppc.ads: Enable stack probing on ppc-linux.
From-SVN: r135630
Vincent Celier [Tue, 20 May 2008 12:47:03 +0000 (14:47 +0200)]
2008-05-20 Vincent Celier <celier@adacore.com>
* gnatname.adb
(Scan_Args): Rewrite to take into account new switch --and to separate
arguments into sections.
(Gnatname): Call Prj.Makr.Initialize, then Prj.Makr.Process for each
section, then Finalize.
From-SVN: r135629
Ed Schonberg [Tue, 20 May 2008 12:46:54 +0000 (14:46 +0200)]
2008-05-20 Ed Schonberg <schonberg@adacore.com>
* freeze.adb
(Freeze_Enumeration_Type): For a subtype that inherits a foreign
convention from its base type, do not set the type to that of integer,
because it may inherit a size clause.
Warn on a size clause with a size different
from that of Integer, if the type has convention C.
From-SVN: r135628
Kevin Pouget [Tue, 20 May 2008 12:46:42 +0000 (14:46 +0200)]
exp_smem.ads, [...]: Construction of access and assign routines has been replaced by an...
2008-05-20 Kevin Pouget <pouget@adacore.com>
* exp_smem.ads, exp_smem.adb: Construction of access and assign
routines has been replaced by an instantiation of
System.Shared_Storage.Shared_Var_Procs generic package, while expanding
shared variable declaration.
Calls to access and assign routines have been replaced by calls to
Read/Write routines of System.Shared_Storage.Shared_Var_Procs
instantiated package.
* rtsfind.ads: RE_Shared_Var_Procs entry has been added in RE_Unit_Table
It identifies the new generic package added in s-shasto.
* s-shasto.adb, s-shasto.ads: A new generic package has been added, it
is instantiated for each shared passive variable. It provides
supporting procedures called upon each read or write access by the
expanded code.
* sem_attr.adb:
For this runtime unit (always compiled in GNAT mode), we allow
stream attributes references for limited types for the case where
shared passive objects are implemented using stream attributes,
which is the default in GNAT's persistent storage implementation.
From-SVN: r135627
Thomas Quinot [Tue, 20 May 2008 12:46:31 +0000 (14:46 +0200)]
2008-05-20 Thomas Quinot <quinot@adacore.com>
* exp_dist.adb
(GARLIC_Support.Add_RACW_Read_Attribute): When a zero value is received,
and the RACW is null-excluding, raise CONSTRAINT_ERROR instead of
assigning NULL into the result, to avoid a spurious warning.
(Add_RACW_Features, case Same_Scope): Add assertion that designated type
is not frozen.
(Add_Stub_Type): Set entity flag Is_RACW_Stub_Type on generated stub
type.
(Build_From_Any_Function, Build_To_Any_Function,
Build_TypeCode_Function): For a type that has user-specified stream
attributes, use an opaque sequence of octets as the representation.
From-SVN: r135626
Javier Miranda [Tue, 20 May 2008 12:46:19 +0000 (14:46 +0200)]
exp_disp.adb (Make_DT, [...]): Avoid generating dispatch tables of locally defined tagged types statically.
2008-05-20 Javier Miranda <miranda@adacore.com>
Ed Schonberg <schonberg@adacore.com>
* exp_disp.adb (Make_DT, Make_Secondary_DT, Make_Tags): Avoid
generating dispatch tables of locally defined tagged types statically.
Remove implicit if-statement that is no longer required.
(Expand_Dispatching_Call): If this is a call to an instance of the
generic dispatching constructor, the type of the first argument may be
a subtype of Tag, so always use the base type to recognize this case.
From-SVN: r135625
Hristian Kirtchev [Tue, 20 May 2008 12:46:06 +0000 (14:46 +0200)]
exp_ch6.adb (Expand_Call): Add guard to ensure that both the parent and the derived type are of the same kind.
2008-05-20 Hristian Kirtchev <kirtchev@adacore.com>
* exp_ch6.adb (Expand_Call): Add guard to ensure that both the parent
and the derived type are of the same kind.
(Expand_Call): Generate type conversions for actuals of
record or array types when the parent and the derived types differ in
size and/or packed status.
From-SVN: r135624
Vincent Celier [Tue, 20 May 2008 12:45:54 +0000 (14:45 +0200)]
prj.adb (Hash (Project_Id)): New function
2008-05-20 Vincent Celier <celier@adacore.com>
* prj.adb (Hash (Project_Id)): New function
(Project_Empty): Add new component Interfaces_Defined
* prj.ads (Source_Data): New component Object_Linked
(Language_Config): New components Object_Generated and Objects_Linked
(Hash (Project_Id)): New function
(Source_Data): New Boolean components In_Interfaces and
Declared_In_Interfaces.
(Project_Data): New Boolean component Interfaces_Defined
* prj-attr.adb:
New project level attribute Object_Generated and Objects_Linked
Add new project level attribute Interfaces
* prj-dect.adb: Use functions Present and No throughout
(Parse_Variable_Declaration): If a string type is specified as a simple
name and is not found in the current project, look for it also in the
ancestors of the project.
* prj-makr.adb:
Replace procedure Make with procedures Initialize, Process and Finalize
to implement H414-023: process different directories with different
patterns.
Use functions Present and No throughout
* prj-makr.ads:
Replace procedure Make with procedures Initialize, Process and Finalize
* prj-nmsc.adb
(Add_Source): Set component Object_Exists and Object_Linked accordnig to
the language configuration.
(Process_Project_Level_Array_Attributes): Process new attributes
Object_Generated and Object_Linked.
(Report_No_Sources): New Boolean parameter Continuation, defaulted to
False, to indicate that the erreor/warning is a continuation.
(Check): Call Report_No_Sources with Contnuation = True after the first
call.
(Error_Msg): Process successively contnuation character and warning
character.
(Find_Explicit_Sources): Check that all declared sources have been found
(Check_File): Indicate in hash table Source_Names when a declared source
is found.
(Check_File): Set Other_Part when found
(Find_Explicit_Sources): In multi language mode, check if all exceptions
to the naming scheme have been found. For Ada, report an error if an
exception has not been found. Otherwise, disregard the exception.
(Check_Interfaces): New procedure
(Add_Source): When Other_Part is defined, set mutual pointers in spec
and body.
(Check): In multi-language mode, call Check_Interfaces
(Process_Sources_In_Multi_Language_Mode): Set In_Interfaces to False
for an excluded source.
(Remove_Source): A source replacing a source in the interfaces is also
in the interfaces.
* prj-pars.adb: Use function Present
* prj-part.adb: Use functions Present and No throughout
(Parse_Single_Project): Set the parent project for child projects
(Create_Virtual_Extending_Project): Register project with no qualifier
(Parse_Single_Project): Allow an abstract project to be extend several
times. Do not allow an abstract project to extend a non abstract
project.
* prj-pp.adb: Use functions Present and No throughout
(Print): Take into account the full associative array attribute
declarations.
* prj-proc.adb: Use functions Present and No throughout
(Expression): Call itself with the same From_Project_Node for the
default value of an external reference.
* prj-strt.adb: Use functions Present and No throughout
(Parse_Variable_Reference): If a variable is specified as a simple name
and is not found in the current project, look for it also in the
ancestors of the project.
* prj-tree.ads, prj-tree.adb (Present): New function
(No): New function
Use functions Present and No throughout
(Parent_Project_Of): New function
(Set_Parent_Project_Of): New procedure
* snames.ads, snames.adb:
Add new standard names Object_Generated and Objects_Linked
From-SVN: r135623