mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-14 06:43:03 +00:00
* src/getargs.c, src/getarg.h (skeleton)): Constify.
* src/lex.c (literalchar): Avoid name clashes on `buf'. * src/getargs.c: Include complain.h. * src/files.c, src/files.h (skeleton_find): Avoid name clashes. * lib/quotearg.c, lib/quotearg.h: Update from fileutils 4.1.
This commit is contained in:
54
src/files.c
54
src/files.c
@@ -35,20 +35,20 @@ struct obstack defines_obstack;
|
||||
struct obstack guard_obstack;
|
||||
struct obstack output_obstack;
|
||||
|
||||
char *spec_outfile; /* for -o. */
|
||||
char *spec_file_prefix; /* for -b. */
|
||||
char *spec_name_prefix; /* for -p. */
|
||||
char *spec_outfile = NULL; /* for -o. */
|
||||
char *spec_file_prefix = NULL; /* for -b. */
|
||||
char *spec_name_prefix = NULL; /* for -p. */
|
||||
|
||||
char *infile;
|
||||
char *attrsfile;
|
||||
char *infile = NULL;
|
||||
char *attrsfile = NULL;
|
||||
|
||||
static char *base_name;
|
||||
static char *short_base_name;
|
||||
static char *base_name = NULL;
|
||||
static char *short_base_name = NULL;
|
||||
|
||||
/* C source file extension (the parser source). */
|
||||
static char *src_extension;
|
||||
static const char *src_extension = NULL;
|
||||
/* Header file extension (if option ``-d'' is specified). */
|
||||
static char *header_extension;
|
||||
static const char *header_extension = NULL;
|
||||
|
||||
|
||||
/*--------------------------.
|
||||
@@ -135,11 +135,11 @@ obstack_save (struct obstack *obs, const char *filename)
|
||||
|
||||
/*------------------------------------------------------------------.
|
||||
| Return the path to the skeleton which locaction might be given in |
|
||||
| ENVVAR, otherwise return SKELETON. |
|
||||
| ENVVAR, otherwise return SKELETON_NAME. |
|
||||
`------------------------------------------------------------------*/
|
||||
|
||||
const char *
|
||||
skeleton_find (const char *envvar, const char *skeleton)
|
||||
skeleton_find (const char *envvar, const char *skeleton_name)
|
||||
{
|
||||
const char *res = getenv (envvar);
|
||||
|
||||
@@ -149,13 +149,13 @@ skeleton_find (const char *envvar, const char *skeleton)
|
||||
/* File doesn't exist in current directory; try in INIT directory. */
|
||||
if (!res && (cp = getenv ("INIT")))
|
||||
{
|
||||
res = XMALLOC (char, strlen (cp) + strlen (skeleton) + 2);
|
||||
sprintf (res, "%s%c%s", cp, '/', skeleton);
|
||||
res = XMALLOC (char, strlen (cp) + strlen (skeleton_name) + 2);
|
||||
sprintf (res, "%s%c%s", cp, '/', skeleton_name);
|
||||
}
|
||||
#endif /* !MSDOS */
|
||||
|
||||
if (!res)
|
||||
res = skeleton;
|
||||
res = skeleton_name;
|
||||
|
||||
return res;
|
||||
}
|
||||
@@ -165,14 +165,14 @@ skeleton_find (const char *envvar, const char *skeleton)
|
||||
| Compute BASE_NAME, SHORT_BASE_NAME and output files extensions. |
|
||||
`----------------------------------------------------------------*/
|
||||
|
||||
/* Replace all characters FROM by TO in the string IN.
|
||||
and returns a new allocated string. */
|
||||
/* Replace all characters FROM by TO in the string IN.
|
||||
and returns a new allocated string. */
|
||||
static char *
|
||||
tr(const char *in, char from, char to)
|
||||
{
|
||||
char *temp;
|
||||
char *out;
|
||||
|
||||
|
||||
out = XMALLOC (char, strlen (in) + 1);
|
||||
|
||||
for (temp = out; *in; in++, out++)
|
||||
@@ -184,15 +184,15 @@ tr(const char *in, char from, char to)
|
||||
return (temp);
|
||||
}
|
||||
|
||||
/* Gets the extension index in FILENAME. Returns 0 if fails to
|
||||
/* Gets the extension index in FILENAME. Returns 0 if fails to
|
||||
find an extension. */
|
||||
static int
|
||||
static int
|
||||
get_extension_index(const char *filename)
|
||||
{
|
||||
int len;
|
||||
|
||||
len = strlen (filename);
|
||||
|
||||
|
||||
if (filename[len-- - 1] == '.')
|
||||
return (0);
|
||||
|
||||
@@ -232,7 +232,7 @@ compute_base_names (void)
|
||||
size_t base_length;
|
||||
size_t short_base_length;
|
||||
size_t ext_index;
|
||||
|
||||
|
||||
/* Set default extensions */
|
||||
src_extension = ".c";
|
||||
header_extension = ".h";
|
||||
@@ -252,9 +252,9 @@ compute_base_names (void)
|
||||
#endif /* MSDOS */
|
||||
/* BASE_LENGTH includes ".tab" but not ".c". */
|
||||
base_length = strlen (spec_outfile);
|
||||
|
||||
|
||||
ext_index = get_extension_index (spec_outfile);
|
||||
/* if the initial segment of extension contains 'c' or a 'C', I assume
|
||||
/* if the initial segment of extension contains 'c' or a 'C', I assume
|
||||
that it is a C or C++ source file */
|
||||
if (ext_index)
|
||||
ext_index = (strspn(spec_outfile + ext_index + 1, "cC")) ? ext_index : 0;
|
||||
@@ -263,7 +263,7 @@ compute_base_names (void)
|
||||
base_length -= strlen (spec_outfile + ext_index);
|
||||
compute_exts_from_src(spec_outfile + ext_index);
|
||||
}
|
||||
|
||||
|
||||
base_name = strndup (spec_outfile, base_length);
|
||||
/* SHORT_BASE_LENGTH includes neither ".tab" nor ".c". */
|
||||
short_base_length = base_length;
|
||||
@@ -302,9 +302,9 @@ compute_base_names (void)
|
||||
/* BASE_LENGTH gets length of BASE_NAME, sans ".y" suffix if any. */
|
||||
|
||||
base_length = strlen (name_base);
|
||||
|
||||
|
||||
ext_index = get_extension_index (name_base);
|
||||
/* if the initial segment of extension contains a 'y' or a 'Y', I assume
|
||||
/* if the initial segment of extension contains a 'y' or a 'Y', I assume
|
||||
that it is a yacc or bison grammar file */
|
||||
if (ext_index)
|
||||
ext_index = (strspn(name_base + ext_index + 1, "yY")) ? ext_index : 0;
|
||||
@@ -360,7 +360,7 @@ output_files (void)
|
||||
attrsfile = stringappend (short_base_name, EXT_STYPE_H);
|
||||
#ifndef MSDOS
|
||||
stringappend (attrsfile, header_extension);
|
||||
#endif /* MSDOS */
|
||||
#endif /* MSDOS */
|
||||
|
||||
/* Output the main file. */
|
||||
if (spec_outfile)
|
||||
|
||||
@@ -67,5 +67,6 @@ void output_files PARAMS((void));
|
||||
FILE *xfopen PARAMS ((const char *name, const char *mode));
|
||||
int xfclose PARAMS ((FILE *ptr));
|
||||
|
||||
const char *skeleton_find PARAMS ((const char *envvar, const char *skeleton));
|
||||
const char *skeleton_find PARAMS ((const char *envvar,
|
||||
const char *skeleton_name));
|
||||
#endif /* !FILES_H_ */
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
#include "getopt.h"
|
||||
#include "system.h"
|
||||
#include "files.h"
|
||||
#include "complain.h"
|
||||
#include "getargs.h"
|
||||
|
||||
int debug_flag = 0;
|
||||
@@ -29,12 +30,13 @@ int defines_flag = 0;
|
||||
int locations_flag = 0;
|
||||
int no_lines_flag = 0;
|
||||
int no_parser_flag = 0;
|
||||
char *skeleton = 0;
|
||||
int token_table_flag = 0;
|
||||
int verbose_flag = 0;
|
||||
int statistics_flag = 0;
|
||||
int yacc_flag = 0; /* for -y */
|
||||
|
||||
const char *skeleton = NULL;
|
||||
|
||||
extern char *program_name;
|
||||
const char *shortopts = "yvdhrltknVo:b:p:S:";
|
||||
static struct option longopts[] =
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
/* flags set by % directives */
|
||||
extern char *spec_file_prefix; /* for -b */
|
||||
extern char *spec_name_prefix; /* for -p */
|
||||
extern char *skeleton;
|
||||
extern const char *skeleton;
|
||||
|
||||
extern int debug_flag; /* for -t */
|
||||
extern int defines_flag; /* for -d */
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
|
||||
/* Buffer for storing the current token. */
|
||||
struct obstack token_obstack;
|
||||
char *token_buffer = NULL;
|
||||
const char *token_buffer = NULL;
|
||||
|
||||
bucket *symval;
|
||||
int numval;
|
||||
@@ -234,10 +234,10 @@ literalchar (struct obstack *out, int *pcode, char term)
|
||||
}
|
||||
else
|
||||
{
|
||||
char buf [] = "c";
|
||||
buf[0] = c;
|
||||
char badchar [] = "c";
|
||||
badchar[0] = c;
|
||||
complain (_("unknown escape sequence: `\\' followed by `%s'"),
|
||||
quote (buf));
|
||||
quote (badchar));
|
||||
code = '?';
|
||||
}
|
||||
} /* has \ */
|
||||
|
||||
@@ -53,7 +53,7 @@ typedef enum token_e
|
||||
tok_obsolete
|
||||
} token_t;
|
||||
|
||||
extern char *token_buffer;
|
||||
extern const char *token_buffer;
|
||||
extern bucket *symval;
|
||||
extern int numval;
|
||||
|
||||
|
||||
@@ -312,7 +312,6 @@ copy_at (FILE *fin, struct obstack *oout, int stack_offset)
|
||||
else if (isdigit (c) || c == '-')
|
||||
{
|
||||
int n;
|
||||
char buf[4096];
|
||||
|
||||
ungetc (c, fin);
|
||||
n = read_signed_integer (fin);
|
||||
@@ -344,7 +343,7 @@ copy_dollar (FILE *fin, struct obstack *oout,
|
||||
symbol_list *rule, int stack_offset)
|
||||
{
|
||||
int c = getc (fin);
|
||||
char *type_name = NULL;
|
||||
const char *type_name = NULL;
|
||||
|
||||
/* Get the type name if explicit. */
|
||||
if (c == '<')
|
||||
|
||||
Reference in New Issue
Block a user