mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-10 03:50:26 +08:00
trans-decl.c (add_argument_checking): Check ts.deferred earlier.
2011-12-10 Tobias Burnus <burnus@net-b.de> Kai Tietz <ktietz@redhat.com> * trans-decl.c (add_argument_checking): Check ts.deferred earlier. * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use %ld with long. Co-Authored-By: Kai Tietz <ktietz@redhat.com> From-SVN: r182190
This commit is contained in:
parent
7897a1c029
commit
be94c03412
gcc/fortran
@ -1,3 +1,9 @@
|
||||
2011-12-10 Tobias Burnus <burnus@net-b.de>
|
||||
Kai Tietz <ktietz@redhat.com>
|
||||
|
||||
* trans-decl.c (add_argument_checking): Check ts.deferred earlier.
|
||||
* trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use %ld with long.
|
||||
|
||||
2011-12-08 Tobias Burnus <burnus@net-b.de>
|
||||
|
||||
PR fortran/50815
|
||||
|
@ -4672,7 +4672,8 @@ add_argument_checking (stmtblock_t *block, gfc_symbol *sym)
|
||||
gfc_formal_arglist *formal;
|
||||
|
||||
for (formal = sym->formal; formal; formal = formal->next)
|
||||
if (formal->sym && formal->sym->ts.type == BT_CHARACTER)
|
||||
if (formal->sym && formal->sym->ts.type == BT_CHARACTER
|
||||
&& !fsym->ts.deferred)
|
||||
{
|
||||
enum tree_code comparison;
|
||||
tree cond;
|
||||
@ -4695,10 +4696,8 @@ add_argument_checking (stmtblock_t *block, gfc_symbol *sym)
|
||||
if the actual argument is (part of) an array, but only if the
|
||||
dummy argument is an array. (See "Sequence association" in
|
||||
Section 12.4.1.4 for F95 and 12.4.1.5 for F2003.) */
|
||||
if (fsym->ts.deferred)
|
||||
continue;
|
||||
else if (fsym->attr.pointer || fsym->attr.allocatable
|
||||
|| (fsym->as && fsym->as->type == AS_ASSUMED_SHAPE))
|
||||
if (fsym->attr.pointer || fsym->attr.allocatable
|
||||
|| (fsym->as && fsym->as->type == AS_ASSUMED_SHAPE))
|
||||
{
|
||||
comparison = NE_EXPR;
|
||||
message = _("Actual string length does not match the declared one"
|
||||
|
@ -6015,7 +6015,7 @@ gfc_conv_intrinsic_repeat (gfc_se * se, gfc_expr * expr)
|
||||
build_int_cst (ncopies_type, 0));
|
||||
gfc_trans_runtime_check (true, false, cond, &se->pre, &expr->where,
|
||||
"Argument NCOPIES of REPEAT intrinsic is negative "
|
||||
"(its value is %lld)",
|
||||
"(its value is %ld)",
|
||||
fold_convert (long_integer_type_node, ncopies));
|
||||
|
||||
/* If the source length is zero, any non negative value of NCOPIES
|
||||
|
Loading…
x
Reference in New Issue
Block a user