OSDN Git Service

* attribs.c (strip_attrs): Remove.
[pf3gnuchains/gcc-fork.git] / gcc / c-incpath.c
index ea83c1a..2f00d62 100644 (file)
@@ -193,7 +193,7 @@ remove_duplicates (cpp_reader *pfile, struct cpp_dir *head,
            cpp_errno (pfile, CPP_DL_ERROR, cur->name);
          else
            {
-             /* If -Wmissing-include-dirs is given, warn. */
+             /* If -Wmissing-include-dirs is given, warn.  */
              cpp_options *opts = cpp_get_options (pfile);
              if (opts->warn_missing_include_dirs && cur->user_supplied_p)
                cpp_errno (pfile, CPP_DL_WARNING, cur->name);
@@ -327,6 +327,16 @@ add_path (char *path, int chain, int cxx_aware, bool user_supplied_p)
 {
   cpp_dir *p;
 
+#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+  /* Convert all backslashes to slashes.  The native CRT stat()
+     function does not recognise a directory that ends in a backslash
+     (unless it is a drive root dir, such "c:\").  Forward slashes,
+     trailing or otherwise, cause no problems for stat().  */
+  char* c;
+  for (c = path; *c; c++)
+    if (*c == '\\') *c = '/';
+#endif
+
   p = xmalloc (sizeof (cpp_dir));
   p->next = NULL;
   p->name = path;