From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1499) id 4D1813858409; Wed, 24 Jan 2024 13:12:27 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4D1813858409 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1706101947; bh=gBMUum6ucJMGrKY6KMv14azbwMnzpRmy8t92uZDTrBs=; h=From:To:Subject:Date:From; b=PqchFipUyReN8CVD1X54G6410RVE5Db79WwbGtSEFSLNYV871QaIor7omZ3EE7Ms7 l3+3jxMR7NLoOqxRI4xAwDnAvnfjAi0M/O+5T9Lh34/X41yBdO/s6nbAqPw+txCO7t qY5w+i0n+17LQ9VFFh7Sf0b5eVvy+G0OLeuIHFIE= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Gaius Mulley To: gcc-cvs@gcc.gnu.org Subject: [gcc r14-8389] PR modula2/113559 FIO.mod lseek requires cssize_t rather than longint X-Act-Checkin: gcc X-Git-Author: Gaius Mulley X-Git-Refname: refs/heads/master X-Git-Oldrev: b8f54195edbecd7151095f137f9ff27e1ddc8e36 X-Git-Newrev: 3de031c96f28f19a68ea2080260d8fd2c78828ee Message-Id: <20240124131227.4D1813858409@sourceware.org> Date: Wed, 24 Jan 2024 13:12:27 +0000 (GMT) List-Id: https://gcc.gnu.org/g:3de031c96f28f19a68ea2080260d8fd2c78828ee commit r14-8389-g3de031c96f28f19a68ea2080260d8fd2c78828ee Author: Gaius Mulley Date: Wed Jan 24 13:11:46 2024 +0000 PR modula2/113559 FIO.mod lseek requires cssize_t rather than longint This patch fixes a bug in gcc/m2/gm2-libs/FIO.mod which failed to cast the whence parameter into the correct type. The patch casts the whence parameter for lseek to SYSTEM.CSSIZE_T. gcc/m2/ChangeLog: PR modula2/113559 * gm2-libs/FIO.mod (SetPositionFromBeginning): Convert pos into CSSIZE_T during call to lseek. (SetPositionFromEnd): Convert pos into CSSIZE_T during call to lseek. Signed-off-by: Gaius Mulley Diff: --- gcc/m2/gm2-libs/FIO.mod | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gcc/m2/gm2-libs/FIO.mod b/gcc/m2/gm2-libs/FIO.mod index 7e0aebe8886..6755d3d649d 100644 --- a/gcc/m2/gm2-libs/FIO.mod +++ b/gcc/m2/gm2-libs/FIO.mod @@ -36,7 +36,7 @@ IMPLEMENTATION MODULE FIO ; provides a simple buffered file input/output library. *) -FROM SYSTEM IMPORT ADR, TSIZE, WORD ; +FROM SYSTEM IMPORT ADR, TSIZE, WORD, CSSIZE_T ; FROM ASCII IMPORT nl, nul, tab ; FROM StrLib IMPORT StrLen, StrConCat, StrCopy ; FROM Storage IMPORT ALLOCATE, DEALLOCATE ; @@ -1448,7 +1448,7 @@ BEGIN filled := 0 END END ; - offset := lseek(unixfd, pos, SEEK_SET) ; + offset := lseek (unixfd, VAL (CSSIZE_T, pos), SEEK_SET) ; IF (offset>=0) AND (pos=offset) THEN abspos := pos @@ -1497,7 +1497,7 @@ BEGIN filled := 0 END END ; - offset := lseek(unixfd, pos, SEEK_END) ; + offset := lseek (unixfd, VAL (CSSIZE_T, pos), SEEK_END) ; IF offset>=0 THEN abspos := offset ;