[PATCH] a68: fix a68_file_size
Jose E. Marchesi
jose.marchesi@oracle.com
Mon Dec 22 13:12:23 GMT 2025
Hello Mohammad.
Thanks for the fix.
I just installed it on your behalf.
> Fix description of function, and invocation of lseek.
>
> Signed-off-by: Mohammad-Reza Nabipoor <mnabipoor@gnu.org>
>
> gcc/algol68/ChangeLog
>
> * a68-parser-scanner.cc (a68_file_size): Fix comment to mention
> it accepts `FILE *' and not file descriptor.
> Fix invocation of `lseek' to correctly revert position of file
> offset to previous one.
> ---
> gcc/algol68/a68-parser-scanner.cc | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/gcc/algol68/a68-parser-scanner.cc b/gcc/algol68/a68-parser-scanner.cc
> index aa67fb8d09c..94647d52882 100644
> --- a/gcc/algol68/a68-parser-scanner.cc
> +++ b/gcc/algol68/a68-parser-scanner.cc
> @@ -119,7 +119,7 @@ supper_postlude[] = {
> } \
> while (0)
>
> -/* Get the size of a file given a file descriptor FILE. In case the size of
> +/* Get the size of a file given a stream pointer FILE. In case the size of
> the file cannot be determined then this function returns -1. */
>
> ssize_t
> @@ -137,7 +137,7 @@ a68_file_size (FILE *file)
> return -1;
> fsize = (ssize_t) off;
>
> - off = lseek (fileno (file), 0, save);
> + off = lseek (fileno (file), save, SEEK_SET);
> if (off == (off_t) -1)
> return -1;
More information about the Algol68
mailing list