uniqstr wasn't being used for handle_syncline like it should.

This commit is contained in:
Paul Eggert
2004-08-08 04:57:06 +00:00
parent c9cbf7c58e
commit dca81a78f8
3 changed files with 13 additions and 4 deletions

View File

@@ -1,5 +1,5 @@
/* Locations for Bison
Copyright (C) 2002 Free Software Foundation, Inc.
Copyright (C) 2002, 2004 Free Software Foundation, Inc.
This file is part of Bison, the GNU Compiler Compiler.
@@ -21,11 +21,13 @@
#ifndef LOCATION_H_
# define LOCATION_H_
# include "uniqstr.h"
/* A boundary between two characters. */
typedef struct
{
/* The name of the file that contains the boundary. */
char const *file;
uniqstr file;
/* The (origin-1) line that contains the boundary. */
int line;
@@ -42,7 +44,7 @@ equal_boundaries (boundary a, boundary b)
{
return (a.column == b.column
&& a.line == b.line
&& a.file == b.file);
&& UNIQSTR_EQ (a.file, b.file));
}
/* A location, that is, a region of source code. */

View File

@@ -1003,7 +1003,7 @@ handle_syncline (char *args)
const char *file = NULL;
file = strchr (args, '"') + 1;
*strchr (file, '"') = 0;
scanner_cursor.file = current_file = xstrdup (file);
scanner_cursor.file = current_file = uniqstr_new (file);
scanner_cursor.line = lineno;
scanner_cursor.column = 1;
}