* [patch, fortran] Bug 35849 - "wrong" line shown in error message for parameter
@ 2016-07-04 19:14 Jerry DeLisle
0 siblings, 0 replies; only message in thread
From: Jerry DeLisle @ 2016-07-04 19:14 UTC (permalink / raw)
To: fortran; +Cc: gcc-patches
[-- Attachment #1: Type: text/plain, Size: 367 bytes --]
I will commit attached patch provided by Steve and reviewed and tested
by myself to trunk. Test case provided.
Self explanatory.
Regards,
Jerry
2016-07-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/35849
* simplify.c (gfc_simplify_ishftc): Check that absolute value of
SHIFT is less than or equal to SIZE.
[-- Attachment #2: pr35849.diff --]
[-- Type: text/x-patch, Size: 697 bytes --]
Index: simplify.c
===================================================================
--- simplify.c (revision 237855)
+++ simplify.c (working copy)
@@ -3280,7 +3280,6 @@ gfc_simplify_ishftc (gfc_expr *e, gfc_ex
return NULL;
gfc_extract_int (sz, &ssize);
-
}
else
ssize = isize;
@@ -3294,7 +3293,10 @@ gfc_simplify_ishftc (gfc_expr *e, gfc_ex
{
if (sz == NULL)
gfc_error ("Magnitude of second argument of ISHFTC exceeds "
- "BIT_SIZE of first argument at %L", &s->where);
+ "BIT_SIZE of first argument at %C");
+ else
+ gfc_error ("Absolute value of SHIFT shall be less than or equal "
+ "to SIZE at %C");
return &gfc_bad_expr;
}
[-- Attachment #3: pr35849.f90 --]
[-- Type: text/x-fortran, Size: 601 bytes --]
! { dg-do compile }
! PR35849
INTEGER, PARAMETER :: j = 15
INTEGER, PARAMETER, DIMENSION(10) :: A = [(i, i = 1,10)]
INTEGER, PARAMETER, DIMENSION(10) :: B = ISHFTC(j, A, -20) ! { dg-error "must be positive" }
INTEGER, PARAMETER, DIMENSION(10) :: C = ISHFTC(1_1, A, j) ! { dg-error "less than or equal to BIT_SIZE" }
INTEGER, PARAMETER, DIMENSION(10) :: D = ISHFTC(3, A, 5) ! { dg-error "Absolute value of SHIFT shall be less than or equal" }
INTEGER, PARAMETER, DIMENSION(10) :: E = ISHFTC(3_1, A) ! { dg-error "second argument of ISHFTC exceeds BIT_SIZE of first argument" }
end
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2016-07-04 19:14 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-04 19:14 [patch, fortran] Bug 35849 - "wrong" line shown in error message for parameter Jerry DeLisle
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).