Joseph Myers [Sun, 25 Nov 2007 16:59:24 +0000 (16:59 +0000)]
* de.po: Update.
From-SVN: r130410
Jerry DeLisle [Sun, 25 Nov 2007 15:57:55 +0000 (15:57 +0000)]
re PR fortran/33152 (Initialization/declaration problems in block data)
2007-11-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/33152
* gfortran.texi: Document default forms assumed for various file
extensions.
From-SVN: r130409
Richard Sandiford [Sun, 25 Nov 2007 14:45:53 +0000 (14:45 +0000)]
tree-sra.c (scalarize_use): Adjust the vpos argument to sra_explode_bitfield_assignment in cases where the...
gcc/
* tree-sra.c (scalarize_use): Adjust the vpos argument to
sra_explode_bitfield_assignment in cases where the type is
wider than the bitfield.
From-SVN: r130408
Richard Guenther [Sun, 25 Nov 2007 14:26:10 +0000 (14:26 +0000)]
tree.h (struct tree_block): Move locus member next to flags.
2007-11-25 Richard Guenther <rguenther@suse.de>
* tree.h (struct tree_block): Move locus member next to
flags.
* c-decl.c (SCOPE_LIST_APPEND): Use BLOCK_CHAIN.
(SCOPE_LIST_CONCAT): Likewise.
(pop_scope): Likewise.
* function.c (instantiate_decls_1): Likewise.
(setjmp_vars_warning): Likewise.
* emit-rtl.c (set_used_decls): Likewise.
* tree-inline.c (add_lexical_block): Likewise.
cp/
decl.c (poplevel): Use BLOCK_CHAIN.
ada/
utils.c (gnat_pushlevel): Use BLOCK_CHAIN.
(gnat_poplevel): Likewise.
From-SVN: r130407
Eric Botcazou [Sun, 25 Nov 2007 13:37:12 +0000 (13:37 +0000)]
decl.c (gnat_to_gnu_entity): If the type has strict alignment...
* decl.c (gnat_to_gnu_entity) <E_Record_Type>: If the type has
strict alignment, no alignment clause and a known static size, cap
the type alignment to the greatest power of 2 factor of the size.
(gnat_to_gnu_field): If the field has a component clause, is aliased
or of a type with strict alignment, require that its size be equal to
that of the type.
(validate_size): Use the type size as the minimum size for a type with
strict alignment.
From-SVN: r130406
Paolo Carlini [Sun, 25 Nov 2007 12:07:55 +0000 (12:07 +0000)]
array (array<>::_M_check): Remove, not necessary anymore.
2007-11-25 Paolo Carlini <pcarlini@suse.de>
* include/tr1_impl/array (array<>::_M_check): Remove, not necessary
anymore.
(array<>::at): Adjust.
* docs/html/17_intro/c++0x_status.html: Fix array::data entry.
From-SVN: r130405
Paolo Carlini [Sun, 25 Nov 2007 11:22:03 +0000 (11:22 +0000)]
stl_algobase.h (__lexicographical_compare<>::__lc): Move out of line.
2007-11-25 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (__lexicographical_compare<>::__lc):
Move out of line.
* include/bits/stl_algobase.h (swap_ranges): Remove redundant
simulated concept checks.
From-SVN: r130404
Paul Thomas [Sun, 25 Nov 2007 09:59:42 +0000 (09:59 +0000)]
re PR fortran/33499 (Rejects valid module with a contained function with an ENTRY)
2007-11-25 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33499
* decl.c (get_proc_name): If ENTRY statement occurs before type
specification, set the symbol untyped and ensure that it is in
the procedure namespace.
2007-11-25 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33499
* gfortran.dg/entry_16.f90: New test.
From-SVN: r130403
GCC Administrator [Sun, 25 Nov 2007 00:17:41 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130401
Hans-Peter Nilsson [Sat, 24 Nov 2007 22:15:54 +0000 (22:15 +0000)]
rtlanal.c (label_is_jump_target_p): Return true for a matching REG_LABEL_TARGET.
* rtlanal.c (label_is_jump_target_p): Return true for a matching
REG_LABEL_TARGET.
* reorg.c (fill_slots_from_thread): Correct last change to use
NULL_RTX, not NULL. Outside of REG_NOTES loop, increase and
decrease LABEL_NUSES for JUMP_LABEL (trial), not XEXP (note, 0).
* jump.c (mark_jump_label_1): Add comment for last change
regarding JUMP_LABEL setting.
* gcse.c (add_label_notes): Remove conditional that the label is
mentioned in insn before adding regnote.
* sched-rgn.c (is_cfg_nonregular): Don't return 1 for a
single_set insn only feeding a label to a jump through a
register that dies there.
From-SVN: r130398
Tobias Burnus [Sat, 24 Nov 2007 13:18:27 +0000 (14:18 +0100)]
re PR fortran/34192 (NEAREST can return wrong numbers)
2007-11-24 Tobias Burnus <burnus@net-b.de>
PR fortran/34192
* gfortran.dg/nearest_2.f90: Add INF/NAN tests.
From-SVN: r130396
Paul Thomas [Sat, 24 Nov 2007 10:17:26 +0000 (10:17 +0000)]
re PR fortran/33541 (gfortran wrongly imports renamed-use-associated symbol unrenamed)
2007-11-24 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33541
* module.c (find_symtree_for_symbol): Move to new location.
(find_symbol): New function.
(load_generic_interfaces): Rework completely so that symtrees
have the local name and symbols have the use name. Renamed
generic interfaces exclude the use of the interface without an
ONLY clause (11.3.2).
(read_module): Implement 11.3.2 in the same way as for generic
interfaces.
2007-11-24 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33541
* gfortran.dg/nested_modules_1.f90: Change the reference to
FOO, forbidden by the standard, to a reference to W.
* gfortran.dg/use_only_1.f90: New test.
From-SVN: r130395
Ollie Wild [Sat, 24 Nov 2007 08:37:00 +0000 (08:37 +0000)]
typeck.c (delta_from_ptrmemfunc): New function.
gcc/cp/
* typeck.c (delta_from_ptrmemfunc): New function.
(get_member_function_from_ptrfunc): Call delta_from_ptrmemfunc.
(build_binary_op): Call delta_from_ptrmemfunc.
From-SVN: r130394
Christopher D. Rickett [Sat, 24 Nov 2007 05:42:07 +0000 (05:42 +0000)]
trans-common.c (build_common_decl): Fix the alignment for BIND(C) common blocks.
2007-11-23 Christopher D. Rickett <crickett@lanl.gov>
* trans-common.c (build_common_decl): Fix the alignment for
BIND(C) common blocks.
From-SVN: r130393
Jerry DeLisle [Sat, 24 Nov 2007 00:29:14 +0000 (00:29 +0000)]
[multiple changes]
2007-11-23 Tobias Burnus <burnus@net-b.de>
PR fortran/34209
* gfortran.dg/nearest_3.f90: New test.
2007-11-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/33317
* gfortran.dg/optional_dim_2.f90: New test.
From-SVN: r130392
Jerry DeLisle [Sat, 24 Nov 2007 00:25:01 +0000 (00:25 +0000)]
re PR libfortran/34209 (run-time lib: NEAREST(0.0_8, -1.0) produces wrong numbers)
2007-11-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/34209
* iresolve.c (gfc_resolve_nearest): If sign variable kind does not match
kind of input variable, convert it to match.
PR fortran/33317
* trans.h: Modify prototype for gfc_conv_missing_dummy.
* trans-expr.c (gfc_conv_missing_dummy): Modify to pass an integer kind
parameter in. Set the type of the dummy to the kind given.
(gfc_conv_function_call): Pass representation.length to
gfc_conv_missing_dummy.
* iresolve.c (gfc_resolve_cshift): Determine the correct kind to use and
if appropriate set representation.length to this kind value.
(gfc_resolve_eoshift): Likewise.
* check.c (gfc_check_cshift): Enable dim_check to allow DIM as an
optional argument. (gfc_check_eoshift): Likewise.
* trans_intrinsic.c (gfc_conv_intrinsic_function_args): Update call to
gfc_conv_missing_dummy.
From-SVN: r130391
GCC Administrator [Sat, 24 Nov 2007 00:17:33 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130389
Tobias Burnus [Sat, 24 Nov 2007 00:11:38 +0000 (01:11 +0100)]
re PR fortran/34187 (BIND(C): Public generic with private bind(c) specific does not use bind(C) name)
2007-11-23 Tobias Burnus <burnus@net-b.de>
PR fortran/34187
* module.c (load_needed): Ensure binding_label is not lost.
* decl.c (set_binding_label,gfc_match_bind_c): Replace
strncpy by strcpy.
2007-11-23 Tobias Burnus <burnus@net-b.de>
PR fortran/34187
* gfortran.dg/bind_c_usage_15.f90: New.
From-SVN: r130386
Dirk Mueller [Fri, 23 Nov 2007 23:02:21 +0000 (23:02 +0000)]
re PR middle-end/34197 (array overflow warning without line number)
2007-11-23 Dirk Mueller <dmueller@suse.de>
Richard Guenther <rguenther@suse.de>
PR middle-end/34197
* tree-vrp.c (check_array_ref): Move check for valid location..
(check_array_bounds) here. Use EXPR_HAS_LOCATION().
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r130385
Paolo Carlini [Fri, 23 Nov 2007 22:14:56 +0000 (22:14 +0000)]
bitset (bitset<>::all): Add, per DR 693 [Ready].
2007-11-23 Paolo Carlini <pcarlini@suse.de>
* include/std/bitset (bitset<>::all): Add, per DR 693 [Ready].
(_Base_bitset<>::_M_are_all_aux()): Add.
* include/debug/bitset (bitset<>::all): Add.
* testsuite/23_containers/bitset/all/1.cc: New.
* docs/html/ext/howto.html: Add an entry for DR 693.
* include/std/bitset (bitset<0>::set, reset, flip, test): Remove,
not necessary anymore.
From-SVN: r130384
Tobias Burnus [Fri, 23 Nov 2007 21:03:48 +0000 (22:03 +0100)]
re PR fortran/34192 (NEAREST can return wrong numbers)
2007-11-23 Tobias Burnus <burnus@net-b.de>
Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/34192
* simplify.c (gfc_simplify_nearest): Fix NEAREST for
subnormal numbers.
2007-11-23 Tobias Burnus <burnus@net-b.de>
PR fortran/34192
* gfortran.dg/nearest_2.f90: New.
Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org>
From-SVN: r130383
Jakub Jelinek [Fri, 23 Nov 2007 20:49:02 +0000 (21:49 +0100)]
re PR c++/30293 (ICE with extern "Java" in store_init_value)
PR c++/30293
PR c++/30294
* decl.c (cp_finish_decl): Disallow variable or field
definitions if extern "Java" aggregates.
(grokparms): Disallow parameters with extern "Java"
aggregates.
(check_function_type): Disallow function return values
with extern "Java" aggregates.
* init.c (build_new_1): Disallow placement new with
extern "Java" aggregates.
* g++.dg/ext/java-2.C: New test.
From-SVN: r130382
Mark Mitchell [Fri, 23 Nov 2007 19:15:09 +0000 (19:15 +0000)]
re PR c++/5310 (Weird warnings about using (int)NULL)
2007-11-23 Mark Mitchell <mark@codesourcery.com>
Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR c++/5310
cp/
* call.c (convert_like_real): Build a zero constant when __null is
converted to an integer type.
testsuite/
* g++.dg/warn/pr5310.C: New.
* g++.dg/warn/pr33160.C: New
Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>
From-SVN: r130381
Hans-Peter Nilsson [Fri, 23 Nov 2007 15:38:29 +0000 (15:38 +0000)]
reload.c (find_reloads_address_1): Call REG_OK_FOR_CONTEXT with the autoincdec code, not outer_code.
* reload.c (find_reloads_address_1) <autoincdec cases>:
Call REG_OK_FOR_CONTEXT with the autoincdec code, not
outer_code.
From-SVN: r130380
Richard Guenther [Fri, 23 Nov 2007 14:28:59 +0000 (14:28 +0000)]
re PR tree-optimization/34176 (SCCVN breaks gettext)
2007-11-23 Richard Guenther <rguenther@suse.de>
Michael Matz <matz@suse.de>
PR tree-optimization/34176
* alloc-pool.h (empty_alloc_pool): Declare.
* alloc-pool.c (empty_alloc_pool): New function.
* tree-ssa-sccvn.c (vn_reference_lookup): Also lookup from the
valid table if a lookup from the optimistic table failed.
(vn_unary_op_lookup): Likewise.
(vn_binary_op_lookup): Likewise.
(vn_phi_lookup): Likewise.
(process_scc): Clear optimistic tables before every iteration.
* gcc.c-torture/execute/pr34176.c: New testcase.
Co-Authored-By: Michael Matz <matz@suse.de>
From-SVN: r130379
Richard Biener [Fri, 23 Nov 2007 14:26:53 +0000 (14:26 +0000)]
tree-ssa-copy.c (may_propagate_copy): Remove redundant checks.
2007-11-23 Richard Guenther <rguenther@suse.de>
* tree-ssa-copy.c (may_propagate_copy): Remove redundant
checks.
(merge_alias_info): Do verification only if checking is
enabled. Merge flow-sensitive alias information in simple
cases.
* tree-ssa-operands.c (get_addr_dereference_operands): Also
complain about missing NMTs.
* gcc.dg/tree-ssa/alias-17.c: New testcase.
From-SVN: r130378
Jakub Jelinek [Fri, 23 Nov 2007 13:39:44 +0000 (14:39 +0100)]
re PR c++/34198 (-Wconversion gives apparent erroneous warning with g++ 4.3-
20071109)
PR c++/34198
* c-common.c (conversion_warning): For INTEGER_TYPE to
INTEGER_TYPE conversions call get_narrower on expr to avoid
spurious warnings from binop shortening or when the implicit
conversion can't change the value.
* gcc.dg/Wconversion-5.c: New test.
* g++.dg/Wconversion3.C: New test.
From-SVN: r130377
Samuel Tardieu [Fri, 23 Nov 2007 13:16:54 +0000 (13:16 +0000)]
s-inmaop-posix.adb, [...]: Use 'Access instead of 'Unchecked_Access in second and third arguments of...
gcc/ada/
* s-inmaop-posix.adb, s-intman-vxworks.adb, s-taprop-hpux-dce.adb,
s-taprop-irix.adb, s-taprop-linux.adb, s-taprop-lynxos.adb,
s-taprop-posix.adb, s-taprop-tru64.adb, s-taprop-vxworks.adb:
Use 'Access instead of 'Unchecked_Access in second and third
arguments of pthread_sigmask.
From-SVN: r130376
Samuel Tardieu [Fri, 23 Nov 2007 13:08:50 +0000 (13:08 +0000)]
Add missing commas beween file names in gcc/ada/ChangeLog
From-SVN: r130375
Paolo Carlini [Fri, 23 Nov 2007 11:49:07 +0000 (11:49 +0000)]
stl_list.h (insert(iterator, value_type&&)): Just forward to emplace.
2007-11-23 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_list.h (insert(iterator, value_type&&)): Just
forward to emplace.
* include/bits/stl_vector.h (insert(iterator, value_type&&)): Likewise.
* include/bits/stl_deque.h (insert(iterator, value_type&&)): Likewise.
* include/debug/list (insert(iterator, value_type&&)): Likewise.
* include/debug/vector (insert(iterator, value_type&&)): Likewise.
* include/debug/deque (insert(iterator, value_type&&)): Likewise.
* include/bits/list.tcc (insert(iterator, value_type&&)): Remove.
* include/bits/vector.tcc (insert(iterator, value_type&&)): Likewise.
* include/bits/deque.tcc (insert(iterator, value_type&&)): Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r130374
Eric Botcazou [Fri, 23 Nov 2007 11:11:04 +0000 (11:11 +0000)]
decl.c (ceil_alignment): New function.
* decl.c (ceil_alignment): New function.
(gnat_to_gnu_entity): Use it to set the alignment on atomic types.
(make_packable_type): Likewise.
From-SVN: r130373
Aldy Hernandez [Fri, 23 Nov 2007 10:50:45 +0000 (10:50 +0000)]
+ * trans-expr.c (gfc_trans_string_copy): Use "void *" when building a
+ memset.
From-SVN: r130371
Richard Guenther [Fri, 23 Nov 2007 09:49:29 +0000 (09:49 +0000)]
tree-ssa-copy.c (may_propagate_copy): Remove redundant checks.
2007-11-23 Richard Guenther <rguenther@suse.de>
* tree-ssa-copy.c (may_propagate_copy): Remove redundant
checks.
(merge_alias_info): Do verification only if checking is
enabled. Merge flow-sensitive alias information in simple
cases.
* tree-ssa-operands.c (get_addr_dereference_operands): Also
complain about missing NMTs.
* gcc.dg/tree-ssa/alias-17.c: New testcase.
From-SVN: r130370
Matthias Klose [Fri, 23 Nov 2007 09:29:44 +0000 (09:29 +0000)]
configure.ac: Adjust makeinfo version check.
2007-11-23 Matthias Klose <doko@ubuntu.com>
* configure.ac: Adjust makeinfo version check.
* configure: Regenerate.
From-SVN: r130367
GCC Administrator [Fri, 23 Nov 2007 00:17:11 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130365
Joseph Myers [Thu, 22 Nov 2007 23:12:29 +0000 (23:12 +0000)]
re PR c/14050 ([DR289] c99 restrict doesn't work in abs declarator)
PR c/14050
* c-decl.c (set_array_declarator_inner): Don't give error for
static or type qualifiers in abstract declarator. Remove
abstract_p parameter.
* c-tree.h (set_array_declarator_inner): Update prototype.
* c-parser.c (c_parser_direct_declarator_inner): Update call to
set_array_declarator_inner.
* doc/standards.texi: Update for C99 TC3.
testsuite:
* gcc.dg/c99-arraydecl-1.c: Don't expect errors for static or type
qualifiers in abstract declarator.
From-SVN: r130362
Hans-Peter Nilsson [Thu, 22 Nov 2007 22:30:23 +0000 (22:30 +0000)]
Forgot to save before minor edit of last change
From-SVN: r130361
Hans-Peter Nilsson [Thu, 22 Nov 2007 22:29:40 +0000 (22:29 +0000)]
mmix.c (mmix_encode_section_info): Remove duplicate line in my edit of the last change.
* config/mmix/mmix.c (mmix_encode_section_info): Remove duplicate
line in my edit of the last change.
From-SVN: r130360
Jakub Jelinek [Thu, 22 Nov 2007 21:58:07 +0000 (22:58 +0100)]
re PR target/33947 (warning: 'const' attribute directive ignored)
PR target/33947
* config/arm/arm.c (arm_init_tls_builtins): Set TREE_NOTHROW
and TREE_READONLY on the fn decl rather than passing a chain
of attributes.
From-SVN: r130359
Tobias Burnus [Thu, 22 Nov 2007 21:40:22 +0000 (22:40 +0100)]
primary.c (gfc_match_structure_constructor): Allow constructor for types without components.
2007-11-22 Tobias Burnus <burnus@net-b.de>
* primary.c (gfc_match_structure_constructor): Allow
constructor for types without components.
2007-11-22 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/derived_constructor_comps_3.f90: New.
From-SVN: r130358
Kaz Kojima [Thu, 22 Nov 2007 21:15:19 +0000 (21:15 +0000)]
sh.md (divsi_inv_m3): Handle zero dividend specially.
* config/sh/sh.md (divsi_inv_m3): Handle zero dividend
specially.
From-SVN: r130357
Jakub Jelinek [Thu, 22 Nov 2007 19:50:45 +0000 (20:50 +0100)]
Fix a misformatted entry.
From-SVN: r130356
Paolo Carlini [Thu, 22 Nov 2007 18:54:36 +0000 (18:54 +0000)]
stl_tree.h (_Rb_tree<>::_Rb_tree_impl<, true>): Remove, identical in mainline to the primary template.
2007-11-22 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree_impl<, true>): Remove,
identical in mainline to the primary template.
From-SVN: r130355
Jakub Jelinek [Thu, 22 Nov 2007 14:06:06 +0000 (15:06 +0100)]
re PR c++/34094 (Undefined static data member in anonymous namespace can acquire a definition anyway)
PR c++/34094
* decl2.c (cp_write_global_declarations): Issue error about static
data members in anonymous namespace which are declared and used,
but not defined.
* g++.dg/ext/visibility/anon7.C: New test.
From-SVN: r130351
Paolo Carlini [Thu, 22 Nov 2007 12:06:27 +0000 (12:06 +0000)]
gnu.ver: Adjust new exports for 128-bit long double.
2007-11-22 Paolo Carlini <pcarlini@suse.de>
* config/abi/pre/gnu.ver: Adjust new exports for 128-bit long double.
From-SVN: r130350
Uros Bizjak [Thu, 22 Nov 2007 11:25:11 +0000 (12:25 +0100)]
i386.h (TARGET_CPU_CPP_BUILTINS): Change checking of ix86_arch and ix86_tune into a switch statement.
* config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Change checking
of ix86_arch and ix86_tune into a switch statement.
(enum processor_type): Default PROCESSOR_I386 to 0.
* config/i386/i386.c (ix86_decompose_address): Use TARGET_K6 instead
of "ix86_tune == PROCESSOR_K6".
(ia32_multipass_dfa_lookahead): Change checking of ix86_tune into
a switch statement.
From-SVN: r130349
Johannes Singler [Thu, 22 Nov 2007 10:13:08 +0000 (10:13 +0000)]
re PR libstdc++/33893 ([parallel mode] Algorithms rely on omp_set_dynamic(false))
2007-11-22 Johannes Singler <singler@ira.uka.de>
PR libstdc++/33893
* include/parallel/multiway_merge.h: made omp_dynamic-safe
* include/parallel/workstealing.h: made omp_dynamic-safe
* include/parallel/base.h: infrastructure, cleanup
* include/parallel/par_loop.h: made omp_dynamic-safe
* include/parallel/features.h: activate loser tree variant
* include/parallel/quicksort.h: made omp_dynamic-safe
* include/parallel/compiletime_settings.h: settings overridable
* include/parallel/equally_split.h: made omp_dynamic-safe
* include/parallel/omp_loop_static.h: made omp_dynamic-safe
* include/parallel/random_shuffle.h: made omp_dynamic-safe
* include/parallel/balanced_quicksort.h: made omp_dynamic-safe
* include/parallel/set_operations.h: made omp_dynamic-safe
* include/parallel/unique_copy.h: made omp_dynamic-safe
* include/parallel/multiway_mergesort.h: made omp_dynamic-safe
* include/parallel/search.h: made omp_dynamic-safe
* include/parallel/partition.h: made omp_dynamic-safe
* include/parallel/partial_sum.h: made omp_dynamic-safe
* include/parallel/find.h: made omp_dynamic-safe
* include/parallel/omp_loop.h: made omp_dynamic-safe
* include/parallel/losertree.h: avoid default constructor
From-SVN: r130347
Tobias Burnus [Thu, 22 Nov 2007 09:55:47 +0000 (10:55 +0100)]
re PR fortran/34079 (Bind(C): Character argument/return value problems)
2007-11-22 Tobias Burnus <burnus@net-b.de>
PR fortran/34079
* trans-expr.c (gfc_conv_function_call): Do not append
string length arguments when calling bind(c) procedures.
* trans-decl.c (create_function_arglist): Do not append
string length arguments when declaring bind(c) procedures.
2007-11-22 Tobias Burnus <burnus@net-b.de>
PR fortran/34079
* gfortran.dg/bind_c_usage_10.f03: Remove .mod file afterwards.
* gfortran.dg/bind_c_usage_13.f03: New.
* gfortran.dg/bind_c_usage_14.f03: New.
From-SVN: r130346
Richard Sandiford [Thu, 22 Nov 2007 09:30:02 +0000 (09:30 +0000)]
re PR rtl-optimization/33848 (reference to non-existent label at -O1 on mips/mipsel)
gcc/testsuite/
PR rtl-optimization/33848
* gcc.dg/torture/pr33848.c: New test.
From-SVN: r130345
Olivier Hainque [Thu, 22 Nov 2007 09:04:02 +0000 (09:04 +0000)]
trans.c (gnat_to_gnu): Reformat lines to fit in 80 columns.
2007-11-22 Olivier Hainque <hainque@adacore.com>
* trans.c (gnat_to_gnu) <case N_Free_Statement>: Reformat lines
to fit in 80 columns.
From-SVN: r130343
Tom Tromey [Thu, 22 Nov 2007 07:34:10 +0000 (07:34 +0000)]
mmix.c (mmix_encode_section_info): Use alloca to avoid writing into string allocated by ggc_alloc_string.
* config/mmix/mmix.c (mmix_encode_section_info): Use alloca to
avoid writing into string allocated by ggc_alloc_string.
From-SVN: r130342
GCC Administrator [Thu, 22 Nov 2007 00:17:35 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130340
Joseph Myers [Wed, 21 Nov 2007 23:10:08 +0000 (23:10 +0000)]
* de.po: Update.
From-SVN: r130337
Jonathan Wakely [Wed, 21 Nov 2007 22:42:18 +0000 (22:42 +0000)]
C++STYLE: Fix typos.
2007-11-21 Jonathan Wakely <jwakely.gcc@gmail.com>
* docs/html/17_intro/C++STYLE: Fix typos.
From-SVN: r130336
Kaz Kojima [Wed, 21 Nov 2007 22:29:04 +0000 (22:29 +0000)]
re PR target/34155 (ICE in simplify_binary_operation_1, at simplify-rtx.c:2666 on sh64)
PR target/34155
* config/sh/sh.md (binary_sf_op): Remove.
(binary_sf_op0, binary_sf_op1): New define_insn_and_split.
* config/sh/sh.c (sh_expand_binop_v2sf): Use gen_binary_sf_op0
and gen_binary_sf_op1.
From-SVN: r130335
Hans-Peter Nilsson [Wed, 21 Nov 2007 19:59:54 +0000 (19:59 +0000)]
regclass.c (init_reg_autoinc): Fix typo preventing test of secondary output reload when...
* regclass.c (init_reg_autoinc): Fix typo preventing test of
secondary output reload when setting forbidden_inc_dec_class.
From-SVN: r130333
Francois-Xavier Coudert [Wed, 21 Nov 2007 18:32:40 +0000 (18:32 +0000)]
re PR fortran/34083 (internal compiler error: in gfc_conv_array_constructor_expr, at fortran/trans-expr.c:2819)
PR fortran/34083
* resolve.c (resolve_structure_cons): Also check for zero rank.
* gfortran.dg/derived_constructor_comps_2.f90: Add check.
From-SVN: r130332
Benjamin Kosnik [Wed, 21 Nov 2007 16:37:26 +0000 (16:37 +0000)]
documentation.html: Validate.
2007-11-20 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/documentation.html: Validate. Add links to index,
correct broken links.
* docs/html/17_intro/C++STYLE: Add bits.
* docs/html/17_intro/configury.html: Correct, update.
* docs/html/17_intro/api.html: Correct HTML.
* include/bits/stl_algobase.h: Adjust comment.
From-SVN: r130331
Aurelien Jarno [Wed, 21 Nov 2007 12:16:51 +0000 (12:16 +0000)]
s-osinte-kfreebsd-gnu.ads (To_Target_Priority): New function.
2007-11-21 Aurelien Jarno <aurelien@aurel32.net>
gcc/ada/
* s-osinte-kfreebsd-gnu.ads (To_Target_Priority): New function.
* Makefile.in: Add EH_MECHANISM=-gcc to kfreebsd-gnu. Remove SYMLIB.
From-SVN: r130330
Richard Guenther [Wed, 21 Nov 2007 10:16:21 +0000 (10:16 +0000)]
re PR tree-optimization/34148 (Too many VOPs, too deep tree-ssa-sccvn.c recursion)
2007-11-21 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34148
* tree-ssa-structalias.c (create_variable_info_for): Do not use
field-sensitive PTA for single-element structures.
* tree-ssa-alias.c (create_overlap_variables_for): Do not create
SFTs for single-element structures.
From-SVN: r130329
GCC Administrator [Wed, 21 Nov 2007 00:17:50 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130327
Richard Guenther [Tue, 20 Nov 2007 22:51:23 +0000 (22:51 +0000)]
re PR middle-end/34154 (gcc 4.1.1 bug / case ranges / unsigned long long)
2007-11-20 Richard Guenther <rguenther@suse.de>
PR middle-end/34154
* gimplify.c (gimplify_switch_expr): Use tree_int_cst_lt instead
of the signed INT_CST_LT.
* stmt.c (expand_case): Likewise.
(estimate_case_costs): Likewise.
* testsuite/gcc.c-torture/execute/pr34154.c: New testcase.
From-SVN: r130324
Uros Bizjak [Tue, 20 Nov 2007 22:33:53 +0000 (23:33 +0100)]
* gcc.dg/tree-ssa/
20030714-1.c: Cleanup dom3 dump file.
From-SVN: r130323
Thomas Koenig [Tue, 20 Nov 2007 21:57:04 +0000 (21:57 +0000)]
re PR fortran/32770 ([Meta-bug] -fdefault-integer-8 issues)
2007-11-20 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/32770
* gfortran.dg/record_marker_1.f90: Explicitly set kinds
so test passes with -frecord-marker=8.
* gfortran.dg/integer_exponentiation_1.f90: Likewise.
* gfortran.dg/integer_exponentiation_2.f90: Likewise.
* gfortran.dg/integer_exponentiation_3.F90: Likewise.
* gfortran.dg/integer_exponentiation_5.F90: Likewise.
* gfortrand.dg/modulo_1.f90: Likewise.
From-SVN: r130322
Richard Sandiford [Tue, 20 Nov 2007 21:17:58 +0000 (21:17 +0000)]
target-supports.exp (check_effective_target_mips_soft_float): New procedure.
gcc/testsuite/
* lib/target-supports.exp (check_effective_target_mips_soft_float):
New procedure.
* gcc.dg/var-expand1.c: Skip for mips_soft_float.
* gcc.dg/pr30957-1.c: Likewise.
From-SVN: r130321
Richard Sandiford [Tue, 20 Nov 2007 20:58:38 +0000 (20:58 +0000)]
variadic_construct.cc: Add dg-require-time.
libstdc++-v3/
* testsuite/ext/throw_allocator/variadic_construct.cc: Add
dg-require-time.
From-SVN: r130320
Rask Ingemann Lambertsen [Tue, 20 Nov 2007 18:11:07 +0000 (19:11 +0100)]
* config.host (ia64*-*-elf*): Build ia64 specific libgcc parts.
From-SVN: r130319
Rask Ingemann Lambertsen [Tue, 20 Nov 2007 17:24:51 +0000 (18:24 +0100)]
read-rtl.c (fatal_expected_char): Print EOF as text rather that its binary representation.
* read-rtl.c (fatal_expected_char): Print EOF as text rather that
its binary representation.
From-SVN: r130318
Jakub Jelinek [Tue, 20 Nov 2007 16:19:40 +0000 (17:19 +0100)]
re PR c++/34089 (Segfault on specialization using struct instead of template function.)
PR c++/34089
* parser.c (cp_parser_class_head): Reject function template ids.
* g++.dg/template/crash74.C: New test.
From-SVN: r130316
Richard Guenther [Tue, 20 Nov 2007 15:16:25 +0000 (15:16 +0000)]
tree-ssa-operands.c (add_virtual_operand): Consistently prune accesses.
2007-11-20 Richard Guenther <rguenther@suse.de>
* tree-ssa-operands.c (add_virtual_operand): Consistently prune
accesses.
* gcc.c-torture/execute/
20071120-1.c: New testcase.
From-SVN: r130315
Paolo Carlini [Tue, 20 Nov 2007 14:06:53 +0000 (14:06 +0000)]
functional_hash.h: Do not include ext/numeric_traits.h.
2007-11-20 Paolo Carlini <pcarlini@suse.de>
* include/bits/functional_hash.h: Do not include ext/numeric_traits.h.
* include/tr1/functional_hash.h: Likewise.
* include/std/functional: Include ext/type_traits.h.
* include/tr1/functional: Likewise.
From-SVN: r130314
Thiemo Seufer [Tue, 20 Nov 2007 13:48:55 +0000 (13:48 +0000)]
mips.c (mips_file_start): Add support for flagging 32-bit code with -mfp64 floating-point.
* config/mips/mips.c (mips_file_start): Add support for
flagging 32-bit code with -mfp64 floating-point.
From-SVN: r130313
Paolo Carlini [Tue, 20 Nov 2007 12:34:44 +0000 (12:34 +0000)]
functional_hash.h (hash<long double>::operator()(long double)): Only declare.
2007-11-20 Paolo Carlini <pcarlini@suse.de>
* include/tr1_impl/functional_hash.h
(hash<long double>::operator()(long double)): Only declare.
* src/hash.cc: Define here.
* config/abi/pre/gnu.ver: Adjust exports.
* include/tr1/functional: Do not include <cmath>.
* include/std/functional: Likewise.
* include/std/functional: Include <new>.
From-SVN: r130312
Jakub Jelinek [Tue, 20 Nov 2007 10:36:03 +0000 (11:36 +0100)]
re PR c/34146 (Inefficient code with compound literals inside a CONSTRUCTO)
PR c/34146
* c-gimplify.c (optimize_compound_literals_in_ctor): New function.
(c_gimplify_expr): Use it.
PR c/34146
* gcc.dg/tree-ssa/pr34146.c: New test.
PR testsuite/33978
* gcc.dg/tree-ssa/pr33723.c: Adjust scan pattern to make it less
dependent on target settings like move_by_pieces etc.
From-SVN: r130311
Ben Elliston [Tue, 20 Nov 2007 08:00:10 +0000 (08:00 +0000)]
* config/spu/spu_mfcio.h: Fix typo.
From-SVN: r130310
Jakub Jelinek [Tue, 20 Nov 2007 06:38:48 +0000 (07:38 +0100)]
re PR c++/28879 (ICE with VLA in template function)
PR c++/28879
* tree.c (build_cplus_array_type_1): Don't pass any VLA types
when processing_template_decl to build_array_type.
* g++.dg/template/vla2.C: New test.
From-SVN: r130309
Jakub Jelinek [Tue, 20 Nov 2007 06:26:11 +0000 (07:26 +0100)]
re PR c++/33962 (ICE at call to overloaded template function with variable-length function argument list)
PR c++/33962
* pt.c (more_specialized_fn): Don't segfault if one or
both argument list end with ellipsis.
* g++.dg/overload/template3.C: New test.
From-SVN: r130308
Ben Elliston [Tue, 20 Nov 2007 05:38:30 +0000 (05:38 +0000)]
* unwind.inc: Comment that unwind-sjlj.c includes this file.
From-SVN: r130307
Ulrich Weigand [Tue, 20 Nov 2007 05:12:09 +0000 (16:12 +1100)]
mfc_tag_release.c: New file.
* config/spu/mfc_tag_release.c: New file.
* config/spu/mfc_multi_tag_release.c: Likewise.
* config/spu/mfc_multi_tag_reserve.c: Likewise.
* config/spu/mfc_tag_release.c: Likewise.
* config/spu/mfc_tag_reserve.c: Likewise.
* config/spu/mfc_tag_table.c: Likewise.
* config/spu/t-spu-elf (LIB2FUNCS_STATIC_EXTRA): Compile them.
(TARGET_LIBGCC2_CFLAGS): Define __IN_LIBGCC2.
* config/spu/spu_mfcio.h (uint64_t): Typedef if __IN_LIBGCC2
is defined and avoid <stdint.h>.
(MFC_TAG_INVALID, MFC_TAG_VALID): New macros.
(mfc_tag_reserve, mfc_tag_release, mfc_multi_tag_reserve,
mfc_multi_tag_release): Likewise.
(__mfc_tag_reserve, __mfc_tag_release, __mfc_multi_tag_reserve,
__mfc_multi_tag_release): Declare.
Co-Authored-By: Ben Elliston <bje@au.ibm.com>
From-SVN: r130306
Jerry DeLisle [Tue, 20 Nov 2007 01:51:04 +0000 (01:51 +0000)]
re PR fortran/33317 (CSHIFT/EOSHIFT: Rejects optional dummy for DIM=)
2007-11-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/33317
* gfortran.dg/optional_dim_2.f90: Remove test.
From-SVN: r130305
Jerry DeLisle [Tue, 20 Nov 2007 01:37:43 +0000 (01:37 +0000)]
re PR fortran/33317 (CSHIFT/EOSHIFT: Rejects optional dummy for DIM=)
2007-11-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/33317
* trans-expr.c (gfc_conv_missing_dummy): Revert.
* iresolve.c (gfc_resolve_cshift): Revert.
(gfc_resolve_eoshift): Likewise.
* check.c (gfc_check_cshift): Revert.
(gfc_check_eoshift): Likewise.
From-SVN: r130304
GCC Administrator [Tue, 20 Nov 2007 00:17:31 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130301
Jason Merrill [Mon, 19 Nov 2007 22:32:30 +0000 (17:32 -0500)]
note PR 28834
From-SVN: r130298
Jason Merrill [Mon, 19 Nov 2007 21:35:13 +0000 (16:35 -0500)]
PR debug/29436, c/32326
PR debug/29436, c/32326
* tree.c (build_type_attribute_qual_variant): Refuse to make
a distinct copy of a struct/enum type. Use build_distinct_type_copy.
* doc/extend.texi (Type Attributes): Don't encourage people to add
attributes to struct/enum types in a typedef. Fix
transparent_union example.
* tree-inline.c (remap_type_1): Remove code that's redundant with
remap_type.
(build_duplicate_type): Set id.copy_decl.
* c-common.c (handle_transparent_union_attribute): Simplify logic.
From-SVN: r130297
Peter Bergner [Mon, 19 Nov 2007 19:50:47 +0000 (13:50 -0600)]
rs6000.c (invalid_e500_subreg, [...]): Handle DDmode and TDmode similarly to DFmode and TFmode.
* config/rs6000/rs6000.c (invalid_e500_subreg,
rs6000_legitimate_offset_address_p, legitimate_lo_sum_address_p,
rs6000_legitimize_address, rs6000_legitimize_reload_address,
rs6000_legitimate_address, function_arg_advance,
spe_build_register_parallel, rs6000_spe_function_arg,
rs6000_split_multireg_move, spe_func_has_64bit_regs_p,
emit_frame_save, gen_frame_mem_offset, rs6000_function_value,
rs6000_libcall_value, rs6000_dwarf_register_span): Handle DDmode and
TDmode similarly to DFmode and TFmode.
* config/rs6000/rs6000.h (LOCAL_ALIGNMENT, MEMBER_TYPE_FORCES_BLK,
DATA_ALIGNMENT, CLASS_MAX_NREGS, CANNOT_CHANGE_MODE_CLASS): Likewise.
* gcc.dg/dfp/ddmode-ice.c: New test.
From-SVN: r130296
Eric Botcazou [Mon, 19 Nov 2007 17:49:53 +0000 (17:49 +0000)]
Add missing entry.
From-SVN: r130295
Eric Botcazou [Mon, 19 Nov 2007 17:49:11 +0000 (17:49 +0000)]
re PR ada/34098 (xgcc: Internal error: Segmentation fault (program gnat1))
PR ada/34098
ada/
* misc.c (gnat_adjust_rli): Delete.
(gnat_init): Do not initialize the translation code here.
Do not call set_lang_adjust_rli.
* trans.c (init_code_table): Make static.
(gnat_init_stmt_group): Delete.
(gigi): Initialize the translation code entirely here.
Emit debug info for the common types here instead of...
* utils.c (gnat_init_decl_processing): ...here.
* gigi.h (init_code_table): Delete.
(gnat_init_stmt_group): Likewise.
* stor-layout.c (lang_adjust_rli): Delete.
(set_lang_adjust_rli): Likewise.
(layout_type): Do not call lang_adjust_rli hook.
* tree.h (set_lang_adjust_rli): Delete.
From-SVN: r130294
Eric Botcazou [Mon, 19 Nov 2007 17:27:06 +0000 (18:27 +0100)]
re PR tree-optimization/34036 (ICE with control flow in the middle of basic block for -fnon-call-exceptions)
PR tree-optimization/34036
* gcc.dg/tree-ssa/pr23109.c: Pass -ftrapping-math and expect warning.
From-SVN: r130293
Bernd Schmidt [Mon, 19 Nov 2007 15:46:41 +0000 (15:46 +0000)]
bfin.c (must_save_p): New function, mostly broken out of n_dregs_to_save and n_pregs_to_save.
* config/bfin/bfin.c (must_save_p): New function, mostly broken out of
n_dregs_to_save and n_pregs_to_save.
(n_pregs_to_save, n_dregs_to_save): Use it. New argument CONSECUTIVE;
all callers changed.
(expand_prologue_reg_save, expand_epilogue_reg_restore): Enhance to be
able to save single D/P registers that aren't saved by the push/pop
multiple insns.
From-SVN: r130292
Thiemo Seufer [Mon, 19 Nov 2007 12:59:49 +0000 (12:59 +0000)]
* config-ml.in: Don't hardcode the Makefile name.
From-SVN: r130291
Richard Biener [Mon, 19 Nov 2007 12:52:58 +0000 (12:52 +0000)]
re PR tree-optimization/34099 (optimizer problem)
2007-11-19 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34099
* tree-ssa-ccp.c (likely_value): Exclude all but PLUS_EXPR,
MINUS_EXPR and POINTER_PLUS_EXPR from handling as UNDEFINED
if only one operand is undefined.
* gcc.c-torture/execute/pr34099-2.c: New testcase.
From-SVN: r130290
Richard Guenther [Mon, 19 Nov 2007 12:52:09 +0000 (12:52 +0000)]
re PR tree-optimization/34099 (optimizer problem)
2007-11-19 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34099
* tree-ssa-ccp.c (likely_value): Exclude all but PLUS_EXPR,
MINUS_EXPR and POINTER_PLUS_EXPR from handling as UNDEFINED
if only one operand is undefined.
* gcc.c-torture/execute/pr34099-2.c: New testcase.
From-SVN: r130289
Tobias Burnus [Mon, 19 Nov 2007 12:30:17 +0000 (13:30 +0100)]
re PR fortran/34079 (Bind(C): Character argument/return value problems)
2007-11-19 Tobias Burnus <burnus@net-b.de>
PR fortran/34079
* decl.c (gfc_match_entry): Support BIND(C).
(gfc_match_subroutine): Fix comment typo.
2007-11-19 Tobias Burnus <burnus@net-b.de>
PR fortran/34079
* gfortran.dg/bind_c_usage_10_c.c: New.
* gfortran.dg/bind_c_usage_10.f03: New.
From-SVN: r130288
Eric Botcazou [Mon, 19 Nov 2007 11:07:28 +0000 (12:07 +0100)]
re PR tree-optimization/34036 (ICE with control flow in the middle of basic block for -fnon-call-exceptions)
PR tree-optimization/34036
* doc/invoke.texi (Optimize Options): Refactor documentation
of -ffast-math.
From-SVN: r130287
Eric Botcazou [Mon, 19 Nov 2007 06:27:31 +0000 (07:27 +0100)]
re PR tree-optimization/34036 (ICE with control flow in the middle of basic block for -fnon-call-exceptions)
PR tree-optimization/34036
* opts.c (set_fast_math_flags): Do not set flags in common
with set_unsafe_math_optimizations_flags, invoke it directly.
(set_unsafe_math_optimizations_flags): Unset flag_trapping_math
and flag_signed_zeros.
* toplev.c (process_options): Force flag_associative_math to 0 and
warn, if it is set and either flag_trapping_math or flag_signed_zeros
is set too.
* doc/invoke.texi (Optimize Options): Document the new behavior
of -funsafe-math-optimizations, that -fassociative-math requires
both -fno-signed-zeros and -fno-trapping-math and make it clear
that -fno-trapping-math requires -fno-signaling-nans.
From-SVN: r130286
GCC Administrator [Mon, 19 Nov 2007 00:17:28 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r130283
Jakub Jelinek [Sun, 18 Nov 2007 22:20:54 +0000 (23:20 +0100)]
re PR c++/30988 (Incorrect "no return statement" warning with __attribute__ ((noreturn)) and __FUNCTION__)
PR c++/30988
semantics.c (finish_call_expr): Set current_function_returns_abnormally
if fn is noreturn FUNCTION_DECL or OVERLOAD with all noreturn
functions.
* g++.dg/warn/noreturn-4.C: New test.
* g++.dg/warn/noreturn-5.C: New test.
* g++.dg/warn/noreturn-6.C: New test.
* g++.dg/warn/noreturn-7.C: New test.
From-SVN: r130280
Thomas Koenig [Sun, 18 Nov 2007 21:18:07 +0000 (21:18 +0000)]
re PR fortran/32770 ([Meta-bug] -fdefault-integer-8 issues)
2007-11-18 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/32770
* gfortran.fortran-torture/execute/equiv_5.f: Set kind on
integers so tests works with -fdefault-integer-8.
* gfortran.fortran-torture/execute/elemental.f90: Use default
integers so test passes with -fdefault-integer-8.
* gfortran.fortran-torture/execute/der_io.f90: Increase
buffer length so test passes with -fdefault-integer-8.
* gfortran.dg/bounds_check_8.f90: Likewise.
* gfortran.dg/arrayio_derived_1.f90: LIkewise.
* gfortran.dg/equiv_7.f90: Set kind so test passes
with -fdefault-integer-8.
* gfortran.dg/g77/
20030326-1.f: Set kind explicitly to
provoke overflow.
From-SVN: r130279
Jerry DeLisle [Sun, 18 Nov 2007 21:05:31 +0000 (21:05 +0000)]
Add PR reference to previous entry.
From-SVN: r130278
Jerry DeLisle [Sun, 18 Nov 2007 20:59:41 +0000 (20:59 +0000)]
re PR fortran/33317 (CSHIFT/EOSHIFT: Rejects optional dummy for DIM=)
2007-11-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/33317
* gfortran.dg/optional_dim_2.f90: New test.
PR fortran/34139
* gfortran.dg/subref_array_pointer_2.f90: Update test condition.
From-SVN: r130277