Use the same location.hh and position.hh in all parsers.
* src/misc/location.hh, src/misc/position.hh: New files, from Bison 2.7. * src/misc/Makefile.am: Distribute them. * src/eltlparse/Makefile.am, src/eltlparse/eltlparse.yy, src/eltlparse/parsedecl.hh, src/eltlparse/public.hh, src/kripkeparse/Makefile.am, src/kripkeparse/kripkeparse.yy, src/kripkeparse/parsedecl.hh, src/kripkeparse/public.hh, src/ltlparse/Makefile.am, src/ltlparse/fmterror.cc, src/ltlparse/ltlparse.yy, src/ltlparse/parsedecl.hh, src/ltlparse/public.hh, src/neverparse/Makefile.am, src/neverparse/neverclaimparse.yy, src/neverparse/parsedecl.hh, src/neverparse/public.hh, src/tgbaparse/Makefile.am, src/tgbaparse/parsedecl.hh, src/tgbaparse/public.hh, src/tgbaparse/tgbaparse.yy: Adjust to use and include misc/location.hh. * NEWS: Mention this change.
This commit is contained in:
parent
a0f5d53ea4
commit
8c2d7fcb7f
25 changed files with 436 additions and 125 deletions
|
|
@ -1,5 +1,6 @@
|
|||
## Copyright (C) 2010, 2011 Laboratoire de Recherche et Développement
|
||||
## de l'Epita (LRDE).
|
||||
## -*- coding: utf-8 -*-
|
||||
## Copyright (C) 2010, 2011, 2013 Laboratoire de Recherche et
|
||||
## Développement de l'Epita (LRDE).
|
||||
##
|
||||
## This file is part of Spot, a model checking library.
|
||||
##
|
||||
|
|
@ -22,10 +23,7 @@ AM_CXXFLAGS = $(WARNING_CXXFLAGS:-Werror=)
|
|||
|
||||
neverparsedir = $(pkgincludedir)/neverparse
|
||||
|
||||
neverparse_HEADERS = \
|
||||
public.hh \
|
||||
location.hh \
|
||||
position.hh
|
||||
neverparse_HEADERS = public.hh
|
||||
|
||||
noinst_LTLIBRARIES = libneverparse.la
|
||||
|
||||
|
|
@ -33,8 +31,6 @@ NEVERCLAIMPARSE_YY = neverclaimparse.yy
|
|||
FROM_NEVERCLAIMPARSE_YY_MAIN = neverclaimparse.cc
|
||||
FROM_NEVERCLAIMPARSE_YY_OTHERS = \
|
||||
stack.hh \
|
||||
position.hh \
|
||||
location.hh \
|
||||
neverclaimparse.hh
|
||||
|
||||
FROM_NEVERCLAIMPARSE_YY = $(FROM_NEVERCLAIMPARSE_YY_MAIN) $(FROM_NEVERCLAIMPARSE_YY_OTHERS)
|
||||
|
|
|
|||
|
|
@ -25,6 +25,7 @@
|
|||
%debug
|
||||
%error-verbose
|
||||
%lex-param { spot::neverclaim_parse_error_list& error_list }
|
||||
%define api.location.type "spot::location"
|
||||
|
||||
%code requires
|
||||
{
|
||||
|
|
@ -49,9 +50,6 @@
|
|||
%code
|
||||
{
|
||||
#include "ltlast/constant.hh"
|
||||
/* Unfortunately Bison 2.3 uses the same guards in all parsers :( */
|
||||
#undef BISON_POSITION_HH
|
||||
#undef BISON_LOCATION_HH
|
||||
#include "ltlparse/public.hh"
|
||||
|
||||
/* neverclaimparse.hh and parsedecl.hh include each other recursively.
|
||||
|
|
@ -234,7 +232,7 @@ src_dest: formula opt_dest
|
|||
i != pel.end(); ++i)
|
||||
{
|
||||
// Adjust the diagnostic to the current position.
|
||||
location here = @1;
|
||||
spot::location here = @1;
|
||||
here.end.line = here.begin.line + i->first.end.line - 1;
|
||||
here.end.column = here.begin.column + i->first.end.column -1;
|
||||
here.begin.line += i->first.begin.line - 1;
|
||||
|
|
@ -276,7 +274,7 @@ namespace spot
|
|||
if (neverclaimyyopen(name))
|
||||
{
|
||||
error_list.push_back
|
||||
(neverclaim_parse_error(neverclaimyy::location(),
|
||||
(neverclaim_parse_error(spot::location(),
|
||||
std::string("Cannot open file ") + name));
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
// Copyright (C) 2010, 2013 Laboratoire de Recherche et Développement
|
||||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2010, 2013 Laboratoire de Recherche et Développement
|
||||
// de l'EPITA.
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -21,11 +22,11 @@
|
|||
|
||||
#include <string>
|
||||
#include "neverclaimparse.hh"
|
||||
#include "location.hh"
|
||||
#include "misc/location.hh"
|
||||
|
||||
# define YY_DECL \
|
||||
int neverclaimyylex(neverclaimyy::parser::semantic_type *yylval, \
|
||||
neverclaimyy::location *yylloc, \
|
||||
spot::location *yylloc, \
|
||||
spot::neverclaim_parse_error_list& error_list)
|
||||
YY_DECL;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
// Copyright (C) 2010 Laboratoire de Recherche et Développement de
|
||||
// l'Epita (LRDE).
|
||||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2010, 2013 Laboratoire de Recherche et Développement
|
||||
// de l'Epita (LRDE).
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
//
|
||||
|
|
@ -20,10 +21,7 @@
|
|||
# define SPOT_NEVERPARSE_PUBLIC_HH
|
||||
|
||||
# include "tgba/tgbaexplicit.hh"
|
||||
// Unfortunately Bison 2.3 uses the same guards in all parsers :(
|
||||
# undef BISON_LOCATION_HH
|
||||
# undef BISON_POSITION_HH
|
||||
# include "neverparse/location.hh"
|
||||
# include "misc/location.hh"
|
||||
# include "ltlenv/defaultenv.hh"
|
||||
# include <string>
|
||||
# include <list>
|
||||
|
|
@ -36,7 +34,7 @@ namespace spot
|
|||
/// @{
|
||||
|
||||
/// \brief A parse diagnostic with its location.
|
||||
typedef std::pair<neverclaimyy::location, std::string> neverclaim_parse_error;
|
||||
typedef std::pair<spot::location, std::string> neverclaim_parse_error;
|
||||
/// \brief A list of parser diagnostics, as filled by parse.
|
||||
typedef std::list<neverclaim_parse_error> neverclaim_parse_error_list;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue