[Bug fortran/103560] [12 Regression] Error: GFC_INTEGER_4 should be available for the library to compile
brocolis at eml dot cc
gcc-bugzilla@gcc.gnu.org
Thu Dec 9 02:52:24 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103560
--- Comment #6 from brocolis at eml dot cc ---
(In reply to Andrew Pinski from comment #4)
> > f951.exe: Error: Nonexistent include directory './'
>
> Hmm, that seems wrong. the directory ./ definitely exists as it is the
> current working directory.
>
> Are you building on a mounted drive or a local disk?
I'm building on a local disk.
This patch works for me on Windows/mingw - applied on top of git-master commit
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=641ff2196fe3909bba852a5ac1d55e7cdab6d361
diff --git a/gcc/fortran/module.c b/gcc/fortran/module.c
index 7b98ba539d6..a4a21082366 100644
--- a/gcc/fortran/module.c
+++ b/gcc/fortran/module.c
@@ -1095,8 +1095,9 @@ gzopen_included_file_1 (const char *name,
gfc_directorylist *list,
if (module && !p->use_for_modules)
continue;
- fullname = (char *) alloca(strlen (p->path) + strlen (name) + 1);
+ fullname = (char *) alloca(strlen (p->path) + strlen (name) + 2);
strcpy (fullname, p->path);
+ strcat (fullname, "/");
strcat (fullname, name);
f = gzopen (fullname, "r");
diff --git a/gcc/fortran/scanner.c b/gcc/fortran/scanner.c
index 4d72ff78543..f1a6cd9ad21 100644
--- a/gcc/fortran/scanner.c
+++ b/gcc/fortran/scanner.c
@@ -409,9 +409,8 @@ add_path_to_list (gfc_directorylist **list, const char
*path,
*list = dir;
dir->use_for_modules = use_for_modules;
dir->warn = warn;
- dir->path = XCNEWVEC (char, strlen (p) + 2);
+ dir->path = XCNEWVEC (char, strlen (p) + 1);
strcpy (dir->path, p);
- strcat (dir->path, "/"); /* make '/' last character */
}
/* defer_warn is set to true while parsing the commandline. */
@@ -476,8 +475,9 @@ open_included_file (const char *name, gfc_directorylist
*list,
if (module && !p->use_for_modules)
continue;
- fullname = (char *) alloca(strlen (p->path) + strlen (name) + 1);
+ fullname = (char *) alloca(strlen (p->path) + strlen (name) + 2);
strcpy (fullname, p->path);
+ strcat (fullname, "/");
strcat (fullname, name);
f = gfc_open_file (fullname);
More information about the Gcc-bugs
mailing list