]> git.saurik.com Git - bison.git/blobdiff - src/files.c
tests: remove quote magic from the bison test wrapper.
[bison.git] / src / files.c
index a346c316922052a8883fcb6a7a8d150fb340ef45..550e42ed49411c89250a4a766340c54afa643a05 100644 (file)
@@ -25,6 +25,7 @@
 #include <dirname.h>
 #include <get-errno.h>
 #include <quote.h>
+#include <quotearg.h>
 #include <stdio-safer.h>
 #include <xstrndup.h>
 
@@ -109,7 +110,8 @@ xfopen (const char *name, const char *mode)
 
   ptr = fopen_safer (name, mode);
   if (!ptr)
-    error (EXIT_FAILURE, get_errno (), _("cannot open file `%s'"), name);
+    error (EXIT_FAILURE, get_errno (),
+           _("%s: cannot open"), quotearg_colon (name));
 
   return ptr;
 }
@@ -125,7 +127,7 @@ xfclose (FILE *ptr)
     return;
 
   if (ferror (ptr))
-    error (EXIT_FAILURE, 0, _("I/O error"));
+    error (EXIT_FAILURE, 0, _("input/output error"));
 
   if (fclose (ptr) != 0)
     error (EXIT_FAILURE, get_errno (), _("cannot close file"));
@@ -140,7 +142,7 @@ xfclose (FILE *ptr)
 static void
 compute_exts_from_gf (const char *ext)
 {
-  if (strcmp (ext, ".y") == 0)
+  if (STREQ (ext, ".y"))
     {
       src_extension = xstrdup (language->src_extension);
       header_extension = xstrdup (language->header_extension);
@@ -213,10 +215,9 @@ file_name_split (const char *file_name,
   if (*ext)
     {
       size_t baselen = *ext - *base;
-      size_t dottablen = 4;
+      size_t dottablen = sizeof (TAB_EXT) - 1;
       if (dottablen < baselen
-          && (strncmp (*ext - dottablen, ".tab", dottablen) == 0
-              || strncmp (*ext - dottablen, "_tab", dottablen) == 0))
+          && STRPREFIX_LIT (TAB_EXT, *ext - dottablen))
         *tab = *ext - dottablen;
     }
 }
@@ -345,7 +346,7 @@ void
 output_file_name_check (char **file_name)
 {
   bool conflict = false;
-  if (0 == strcmp (*file_name, grammar_file))
+  if (STREQ (*file_name, grammar_file))
     {
       complain (_("refusing to overwrite the input file %s"),
                 quote (*file_name));
@@ -355,7 +356,7 @@ output_file_name_check (char **file_name)
     {
       int i;
       for (i = 0; i < file_names_count; i++)
-        if (0 == strcmp (file_names[i], *file_name))
+        if (STREQ (file_names[i], *file_name))
           {
             warn (_("conflicting outputs to file %s"),
                   quote (*file_name));