diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 353ac9a02c4c5f39b99efab961171320669ff571..54a80e4fc536cb6e1fdd20ef15f29f5b247c03b1 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,16 @@ +2005-05-15 Andreas Jaeger <aj@suse.de> + + * intrinsics/chdir.c, intrinsics/getlog.c, intrinsics/link.c, + intrinsics/symlnk.c, intrinsics/perror.c: Include <string.h> for + prototypes. + + * runtime/string.c (compare0): Remove unused variable. + * io/unit.c (init_units): Remove unused variables. + * intrinsics/getcwd.c (getcwd_i4_sub): Remove unused variable. + * intrinsics/unlink.c (unlink_i4_sub): Remove unused variable. + * intrinsics/stat.c (stat_i4_sub, fstat_i8_sub, fstat_i4_sub, + stat_i8_sub): Remove unused variable. + 2005-05-12 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/21324 @@ -179,7 +192,7 @@ from WRITING to READING. 2005-04-22 Paul Thomas <pault@gcc.gnu.org> - Jerry DeLisle <jvdelisle@verizon.net> + Jerry DeLisle <jvdelisle@verizon.net> * io/write.c (nml_write_obj): Provide 1 more byte for ext_name. * io/list_read.c (nml_get_obj_data): Put extra brackets in get_mem @@ -355,7 +368,7 @@ environment variables we want to be positive. (init_integer): Function to allow negative environment variables (e.g. for GFORTRAN_STDIN_UNIT). - + 2005-04-10 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/17992 @@ -466,7 +479,7 @@ 2005-04-09 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/20163 - * runtime/string.c (compare0): Use fstrlen() to + * runtime/string.c (compare0): Use fstrlen() to strip trailing blanks from option string. 2005-04-09 Andrew Pinski <pinskia@physics.uc.edu> diff --git a/libgfortran/intrinsics/chdir.c b/libgfortran/intrinsics/chdir.c index f03a607e867b1b74a822b9b4e28349d0429f2bd5..817371f84a8b06ecf11fdf0d98ef4e20658d7d18 100644 --- a/libgfortran/intrinsics/chdir.c +++ b/libgfortran/intrinsics/chdir.c @@ -35,6 +35,9 @@ Boston, MA 02111-1307, USA. */ #include "../io/io.h" +#ifdef HAVE_STRING_H +#include <string.h> +#endif #ifdef HAVE_UNISTD_H #include <unistd.h> #endif @@ -60,11 +63,11 @@ chdir_i4_sub (char *dir, GFC_INTEGER_4 *status, gfc_charlen_type dir_len) /* Make a null terminated copy of the strings. */ str = gfc_alloca (dir_len + 1); memcpy (str, dir, dir_len); - str[dir_len] = '\0'; + str[dir_len] = '\0'; val = chdir (str); - if (status != NULL) + if (status != NULL) *status = (val == 0) ? 0 : errno; } iexport(chdir_i4_sub); @@ -85,11 +88,11 @@ chdir_i8_sub (char *dir, GFC_INTEGER_8 *status, gfc_charlen_type dir_len) /* Make a null terminated copy of the strings. */ str = gfc_alloca (dir_len + 1); memcpy (str, dir, dir_len); - str[dir_len] = '\0'; + str[dir_len] = '\0'; val = chdir (str); - if (status != NULL) + if (status != NULL) *status = (val == 0) ? 0 : errno; } iexport(chdir_i8_sub); diff --git a/libgfortran/intrinsics/getcwd.c b/libgfortran/intrinsics/getcwd.c index 707db529ebb8c39dc9f43a793c5a0bc6070cd6a1..89e481d015d3fb53f5049af514b16894d937f92a 100644 --- a/libgfortran/intrinsics/getcwd.c +++ b/libgfortran/intrinsics/getcwd.c @@ -1,5 +1,5 @@ /* Implementation of the GETCWD intrinsic. - Copyright (C) 2004 Free Software Foundation, Inc. + Copyright (C) 2004, 2005 Free Software Foundation, Inc. Contributed by Steven G. Kargl <kargls@comcast.net>. This file is part of the GNU Fortran 95 runtime library (libgfortran). @@ -46,7 +46,7 @@ iexport_proto(getcwd_i4_sub); void getcwd_i4_sub (char *cwd, GFC_INTEGER_4 *status, gfc_charlen_type cwd_len) { - char str[cwd_len + 1], *s; + char str[cwd_len + 1]; GFC_INTEGER_4 stat; memset(cwd, ' ', (size_t) cwd_len); @@ -58,7 +58,7 @@ getcwd_i4_sub (char *cwd, GFC_INTEGER_4 *status, gfc_charlen_type cwd_len) stat = 0; memcpy (cwd, str, strlen (str)); } - if (status != NULL) + if (status != NULL) *status = stat; } iexport(getcwd_i4_sub); diff --git a/libgfortran/intrinsics/getlog.c b/libgfortran/intrinsics/getlog.c index 719447561cfb6dfedd81efc483b268b17d74e851..9eda12ee5dadf62a8186071799c1e3367e76ffe0 100644 --- a/libgfortran/intrinsics/getlog.c +++ b/libgfortran/intrinsics/getlog.c @@ -31,6 +31,9 @@ Boston, MA 02111-1307, USA. */ #include "config.h" #include "libgfortran.h" +#ifdef HAVE_STRING_H +#include <string.h> +#endif #ifdef HAVE_UNISTD_H #include <unistd.h> #endif @@ -44,7 +47,7 @@ Boston, MA 02111-1307, USA. */ void PREFIX(getlog) (char *, gfc_charlen_type); export_proto_np(PREFIX(getlog)); -void +void PREFIX(getlog) (char * login, gfc_charlen_type login_len) { int p_len; diff --git a/libgfortran/intrinsics/link.c b/libgfortran/intrinsics/link.c index 33cf816b66e88ab01d15166aa4335c2b6e8d0311..8d131fef2b47fd4c3d9baf19efd53ee347d2897a 100644 --- a/libgfortran/intrinsics/link.c +++ b/libgfortran/intrinsics/link.c @@ -35,6 +35,9 @@ Boston, MA 02111-1307, USA. */ #include "../io/io.h" +#ifdef HAVE_STRING_H +#include <string.h> +#endif #ifdef HAVE_UNISTD_H #include <unistd.h> #endif @@ -64,15 +67,15 @@ link_i4_sub (char *path1, char *path2, GFC_INTEGER_4 *status, /* Make a null terminated copy of the strings. */ str1 = gfc_alloca (path1_len + 1); memcpy (str1, path1, path1_len); - str1[path1_len] = '\0'; + str1[path1_len] = '\0'; str2 = gfc_alloca (path2_len + 1); memcpy (str2, path2, path2_len); - str2[path2_len] = '\0'; + str2[path2_len] = '\0'; val = link (str1, str2); - if (status != NULL) + if (status != NULL) *status = (val == 0) ? 0 : errno; } iexport(link_i4_sub); @@ -97,15 +100,15 @@ link_i8_sub (char *path1, char *path2, GFC_INTEGER_8 *status, /* Make a null terminated copy of the strings. */ str1 = gfc_alloca (path1_len + 1); memcpy (str1, path1, path1_len); - str1[path1_len] = '\0'; + str1[path1_len] = '\0'; str2 = gfc_alloca (path2_len + 1); memcpy (str2, path2, path2_len); - str2[path2_len] = '\0'; + str2[path2_len] = '\0'; val = link (str1, str2); - if (status != NULL) + if (status != NULL) *status = (val == 0) ? 0 : errno; } iexport(link_i8_sub); diff --git a/libgfortran/intrinsics/perror.c b/libgfortran/intrinsics/perror.c index c6c08a6279ab65d6cee030d8eab0d733efbed6e4..8926901fb9e3749aca91483f74d6423e373b306a 100644 --- a/libgfortran/intrinsics/perror.c +++ b/libgfortran/intrinsics/perror.c @@ -36,6 +36,9 @@ Boston, MA 02111-1307, USA. */ #include "../io/io.h" +#ifdef HAVE_STRING_H +#include <string.h> +#endif /* SUBROUTINE PERROR(STRING) CHARACTER(len=*), INTENT(IN) :: STRING */ @@ -56,7 +59,7 @@ perror_sub (char *string, gfc_charlen_type string_len) /* Make a null terminated copy of the strings. */ str = gfc_alloca (string_len + 1); memcpy (str, string, string_len); - str[string_len] = '\0'; + str[string_len] = '\0'; perror (str); } diff --git a/libgfortran/intrinsics/stat.c b/libgfortran/intrinsics/stat.c index df76f3f97627a4ac092440f51df56f2316a8665f..1d21529b9a14fe1c37d17f4ef50cbc461cf42142 100644 --- a/libgfortran/intrinsics/stat.c +++ b/libgfortran/intrinsics/stat.c @@ -1,5 +1,5 @@ /* Implementation of the STAT and FSTAT intrinsics. - Copyright (C) 2004 Free Software Foundation, Inc. + Copyright (C) 2004, 2005 Free Software Foundation, Inc. Contributed by Steven G. Kargl <kargls@comcast.net>. This file is part of the GNU Fortran 95 runtime library (libgfortran). @@ -73,8 +73,6 @@ stat_i4_sub (char *name, gfc_array_i4 *sarray, GFC_INTEGER_4 *status, char *str; struct stat sb; - index_type stride[GFC_MAX_DIMENSIONS]; - /* If the rank of the array is not 1, abort. */ if (GFC_DESCRIPTOR_RANK (sarray) != 1) runtime_error ("Array rank of SARRAY is not 1."); @@ -93,11 +91,11 @@ stat_i4_sub (char *name, gfc_array_i4 *sarray, GFC_INTEGER_4 *status, /* Make a null terminated copy of the string. */ str = gfc_alloca (name_len + 1); memcpy (str, name, name_len); - str[name_len] = '\0'; + str[name_len] = '\0'; val = stat(str, &sb); - if (val == 0) + if (val == 0) { /* Device ID */ sarray->data[0 * sarray->dim[0].stride] = sb.st_dev; @@ -116,7 +114,7 @@ stat_i4_sub (char *name, gfc_array_i4 *sarray, GFC_INTEGER_4 *status, /* Owner's gid */ sarray->data[5 * sarray->dim[0].stride] = sb.st_gid; - + /* ID of device containing directory entry for file (0 if not available) */ #if HAVE_STRUCT_STAT_ST_RDEV sarray->data[6 * sarray->dim[0].stride] = sb.st_rdev; @@ -151,7 +149,7 @@ stat_i4_sub (char *name, gfc_array_i4 *sarray, GFC_INTEGER_4 *status, #endif } - if (status != NULL) + if (status != NULL) *status = (val == 0) ? 0 : errno; } iexport(stat_i4_sub); @@ -168,8 +166,6 @@ stat_i8_sub (char *name, gfc_array_i8 *sarray, GFC_INTEGER_8 *status, char *str; struct stat sb; - index_type stride[GFC_MAX_DIMENSIONS]; - /* If the rank of the array is not 1, abort. */ if (GFC_DESCRIPTOR_RANK (sarray) != 1) runtime_error ("Array rank of SARRAY is not 1."); @@ -188,7 +184,7 @@ stat_i8_sub (char *name, gfc_array_i8 *sarray, GFC_INTEGER_8 *status, /* Make a null terminated copy of the string. */ str = gfc_alloca (name_len + 1); memcpy (str, name, name_len); - str[name_len] = '\0'; + str[name_len] = '\0'; val = stat(str, &sb); @@ -205,13 +201,13 @@ stat_i8_sub (char *name, gfc_array_i8 *sarray, GFC_INTEGER_8 *status, /* Number of (hard) links */ sarray->data[3 * sarray->dim[0].stride] = sb.st_nlink; - + /* Owner's uid */ sarray->data[4 * sarray->dim[0].stride] = sb.st_uid; /* Owner's gid */ sarray->data[5 * sarray->dim[0].stride] = sb.st_gid; - + /* ID of device containing directory entry for file (0 if not available) */ #if HAVE_STRUCT_STAT_ST_RDEV sarray->data[6 * sarray->dim[0].stride] = sb.st_rdev; @@ -246,7 +242,7 @@ stat_i8_sub (char *name, gfc_array_i8 *sarray, GFC_INTEGER_8 *status, #endif } - if (status != NULL) + if (status != NULL) *status = (val == 0) ? 0 : errno; } iexport(stat_i8_sub); @@ -275,13 +271,13 @@ stat_i8 (char *name, gfc_array_i8 *sarray, gfc_charlen_type name_len) /* SUBROUTINE FSTAT(UNIT, SARRAY, STATUS) - INTEGER, INTENT(IN) :: UNIT + INTEGER, INTENT(IN) :: UNIT INTEGER, INTENT(OUT) :: SARRAY(13) - INTEGER, INTENT(OUT), OPTIONAL :: STATUS + INTEGER, INTENT(OUT), OPTIONAL :: STATUS FUNCTION FSTAT(UNIT, SARRAY) INTEGER FSTAT - INTEGER, INTENT(IN) :: UNIT + INTEGER, INTENT(IN) :: UNIT INTEGER, INTENT(OUT) :: SARRAY(13) */ extern void fstat_i4_sub (GFC_INTEGER_4 *, gfc_array_i4 *, GFC_INTEGER_4 *); @@ -293,8 +289,6 @@ fstat_i4_sub (GFC_INTEGER_4 *unit, gfc_array_i4 *sarray, GFC_INTEGER_4 *status) int val; struct stat sb; - index_type stride[GFC_MAX_DIMENSIONS]; - /* If the rank of the array is not 1, abort. */ if (GFC_DESCRIPTOR_RANK (sarray) != 1) runtime_error ("Array rank of SARRAY is not 1."); @@ -318,7 +312,7 @@ fstat_i4_sub (GFC_INTEGER_4 *unit, gfc_array_i4 *sarray, GFC_INTEGER_4 *status) /* Inode number */ sarray->data[1 * sarray->dim[0].stride] = sb.st_ino; - + /* File mode */ sarray->data[2 * sarray->dim[0].stride] = sb.st_mode; @@ -330,7 +324,7 @@ fstat_i4_sub (GFC_INTEGER_4 *unit, gfc_array_i4 *sarray, GFC_INTEGER_4 *status) /* Owner's gid */ sarray->data[5 * sarray->dim[0].stride] = sb.st_gid; - + /* ID of device containing directory entry for file (0 if not available) */ #if HAVE_STRUCT_STAT_ST_RDEV sarray->data[6 * sarray->dim[0].stride] = sb.st_rdev; @@ -365,7 +359,7 @@ fstat_i4_sub (GFC_INTEGER_4 *unit, gfc_array_i4 *sarray, GFC_INTEGER_4 *status) #endif } - if (status != NULL) + if (status != NULL) *status = (val == 0) ? 0 : errno; } iexport(fstat_i4_sub); @@ -379,8 +373,6 @@ fstat_i8_sub (GFC_INTEGER_8 *unit, gfc_array_i8 *sarray, GFC_INTEGER_8 *status) int val; struct stat sb; - index_type stride[GFC_MAX_DIMENSIONS]; - /* If the rank of the array is not 1, abort. */ if (GFC_DESCRIPTOR_RANK (sarray) != 1) runtime_error ("Array rank of SARRAY is not 1."); @@ -416,7 +408,7 @@ fstat_i8_sub (GFC_INTEGER_8 *unit, gfc_array_i8 *sarray, GFC_INTEGER_8 *status) /* Owner's gid */ sarray->data[5 * sarray->dim[0].stride] = sb.st_gid; - + /* ID of device containing directory entry for file (0 if not available) */ #if HAVE_STRUCT_STAT_ST_RDEV sarray->data[6 * sarray->dim[0].stride] = sb.st_rdev; @@ -451,7 +443,7 @@ fstat_i8_sub (GFC_INTEGER_8 *unit, gfc_array_i8 *sarray, GFC_INTEGER_8 *status) #endif } - if (status != NULL) + if (status != NULL) *status = (val == 0) ? 0 : errno; } iexport(fstat_i8_sub); diff --git a/libgfortran/intrinsics/symlnk.c b/libgfortran/intrinsics/symlnk.c index d18fe2f6929a1baf045680fe1e59873e08fb46b6..66fa990412abe5198fab671bd40536e412f12cac 100644 --- a/libgfortran/intrinsics/symlnk.c +++ b/libgfortran/intrinsics/symlnk.c @@ -35,6 +35,9 @@ Boston, MA 02111-1307, USA. */ #include "../io/io.h" +#ifdef HAVE_STRING_H +#include <string.h> +#endif #ifdef HAVE_UNISTD_H #include <unistd.h> #endif @@ -64,15 +67,15 @@ symlnk_i4_sub (char *path1, char *path2, GFC_INTEGER_4 *status, /* Make a null terminated copy of the strings. */ str1 = gfc_alloca (path1_len + 1); memcpy (str1, path1, path1_len); - str1[path1_len] = '\0'; + str1[path1_len] = '\0'; str2 = gfc_alloca (path2_len + 1); memcpy (str2, path2, path2_len); - str2[path2_len] = '\0'; + str2[path2_len] = '\0'; val = symlink (str1, str2); - if (status != NULL) + if (status != NULL) *status = (val == 0) ? 0 : errno; } iexport(symlnk_i4_sub); @@ -97,15 +100,15 @@ symlnk_i8_sub (char *path1, char *path2, GFC_INTEGER_8 *status, /* Make a null terminated copy of the strings. */ str1 = gfc_alloca (path1_len + 1); memcpy (str1, path1, path1_len); - str1[path1_len] = '\0'; + str1[path1_len] = '\0'; str2 = gfc_alloca (path2_len + 1); memcpy (str2, path2, path2_len); - str2[path2_len] = '\0'; + str2[path2_len] = '\0'; val = symlink (str1, str2); - if (status != NULL) + if (status != NULL) *status = (val == 0) ? 0 : errno; } iexport(symlnk_i8_sub); diff --git a/libgfortran/intrinsics/unlink.c b/libgfortran/intrinsics/unlink.c index 2b4792bf808ecd7b17daa109ce2e86e9e15583fb..52328de50f113e7649f917084bec66565f48e648 100644 --- a/libgfortran/intrinsics/unlink.c +++ b/libgfortran/intrinsics/unlink.c @@ -1,5 +1,5 @@ /* Implementation of the UNLINK intrinsic. - Copyright (C) 2004 Free Software Foundation, Inc. + Copyright (C) 2004, 2005 Free Software Foundation, Inc. Contributed by Steven G. Kargl <kargls@comcast.net>. This file is part of the GNU Fortran 95 runtime library (libgfortran). @@ -51,7 +51,7 @@ iexport_proto(unlink_i4_sub); void unlink_i4_sub (char *name, GFC_INTEGER_4 *status, gfc_charlen_type name_len) { - char *str, *s; + char *str; GFC_INTEGER_4 stat; /* Trim trailing spaces from name. */ @@ -61,11 +61,11 @@ unlink_i4_sub (char *name, GFC_INTEGER_4 *status, gfc_charlen_type name_len) /* Make a null terminated copy of the string. */ str = gfc_alloca (name_len + 1); memcpy (str, name, name_len); - str[name_len] = '\0'; + str[name_len] = '\0'; stat = unlink (str); - if (status != NULL) + if (status != NULL) *status = (stat == 0) ? stat : errno; } iexport(unlink_i4_sub); diff --git a/libgfortran/io/unit.c b/libgfortran/io/unit.c index f0d8dbe205fded29212d2a3c557cedf1bf911f98..8fb62e34c13387ac5f6f8a31d5f5dfcd66289c4f 100644 --- a/libgfortran/io/unit.c +++ b/libgfortran/io/unit.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2002, 2003 Free Software Foundation, Inc. +/* Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. Contributed by Andy Vaught This file is part of the GNU Fortran 95 runtime library (libgfortran). @@ -288,7 +288,6 @@ is_internal_unit () void init_units (void) { - gfc_offset m, n; gfc_unit *u; int i; diff --git a/libgfortran/runtime/string.c b/libgfortran/runtime/string.c index 07f374eea048aa2902835ff3578ed75a71d242ff..5fff97f5a3cacc68932c0fe9b8411c8c75be0dc5 100644 --- a/libgfortran/runtime/string.c +++ b/libgfortran/runtime/string.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2002-2003 Free Software Foundation, Inc. +/* Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. Contributed by Paul Brook This file is part of the GNU Fortran 95 runtime library (libgfortran). @@ -40,12 +40,11 @@ Boston, MA 02111-1307, USA. */ static int compare0 (const char *s1, int s1_len, const char *s2) { - int i; int len; /* Strip trailing blanks from the Fortran string. */ - len = fstrlen(s1, s1_len); - return strncasecmp(s1,s2,len) == 0; + len = fstrlen (s1, s1_len); + return strncasecmp (s1, s2, len) == 0; }