[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
certi/libCERTI tokens.ll syntax.yy
From: |
certi-cvs |
Subject: |
certi/libCERTI tokens.ll syntax.yy |
Date: |
Sun, 09 Dec 2007 17:02:22 +0000 |
CVSROOT: /sources/certi
Module name: certi
Changes by: Eric NOULARD <erk> 07/12/09 17:02:22
Modified files:
libCERTI : tokens.ll syntax.yy
Log message:
Fix bug #21610 : Timestamp should be allowed as attribute/parameter name
The applied patch is from Chris Rule.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/tokens.ll?cvsroot=certi&r1=3.3&r2=3.4
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/syntax.yy?cvsroot=certi&r1=3.5&r2=3.6
Patches:
Index: tokens.ll
===================================================================
RCS file: /sources/certi/certi/libCERTI/tokens.ll,v
retrieving revision 3.3
retrieving revision 3.4
diff -u -b -r3.3 -r3.4
--- tokens.ll 9 Mar 2006 19:54:28 -0000 3.3
+++ tokens.ll 9 Dec 2007 17:02:22 -0000 3.4
@@ -20,7 +20,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: tokens.ll,v 3.3 2006/03/09 19:54:28 breholee Exp $
+// $Id: tokens.ll,v 3.4 2007/12/09 17:02:22 erk Exp $
// ----------------------------------------------------------------------------
#include "syntax.h"
@@ -38,6 +38,7 @@
OrderType order ;
TransportType transport ;
int line_number ;
+std::string timestamp_arg;
}}
@@ -67,8 +68,9 @@
return ORDER ;
}
[Tt][Ii][Mm][Ee][Ss][Tt][Aa][Mm][Pp] {
+ certi::fedparser::timestamp_arg = std::string(yytext) ;
certi::fedparser::order = certi::TIMESTAMP ;
- return ORDER ;
+ return TIMESTAMP_TOKEN ;
}
"("[Pp][Aa][Rr][Aa][Mm][Ee][Tt][Ee][Rr] return PARAMETER ;
"("[Ss][Ee][Cc]_[Ll][Ee][Vv][Ee][Ll] return SEC_LEVEL ;
Index: syntax.yy
===================================================================
RCS file: /sources/certi/certi/libCERTI/syntax.yy,v
retrieving revision 3.5
retrieving revision 3.6
diff -u -b -r3.5 -r3.6
--- syntax.yy 29 Aug 2007 13:07:58 -0000 3.5
+++ syntax.yy 9 Dec 2007 17:02:22 -0000 3.6
@@ -20,7 +20,7 @@
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
//
-// $Id: syntax.yy,v 3.5 2007/08/29 13:07:58 erk Exp $
+// $Id: syntax.yy,v 3.6 2007/12/09 17:02:22 erk Exp $
// ----------------------------------------------------------------------------
#include "fed.hh"
@@ -35,6 +35,7 @@
extern std::string arg ;
extern const char *fed_filename ;
extern int line_number ;
+extern std::string timestamp_arg;
}}
int yylex();
@@ -62,6 +63,7 @@
%token SPACE
%token SPACES
%token TRANSPORT
+%token TIMESTAMP_TOKEN
%start fed
@@ -160,6 +162,15 @@
| attribute_list attribute ;
attribute:
+ ATTRIBUTE TIMESTAMP_TOKEN TRANSPORT ORDER { certi::fedparser::arg =
certi::fedparser::timestamp_arg;
+
certi::fedparser::addAttribute(); }
+ R_PAR ;
+
+attribute:
+ ATTRIBUTE STRING TRANSPORT TIMESTAMP_TOKEN {
certi::fedparser::addAttribute(); }
+ R_PAR ;
+
+attribute:
ATTRIBUTE STRING TRANSPORT ORDER { certi::fedparser::addAttribute(); }
R_PAR ;
@@ -177,6 +188,11 @@
| interaction_class_list interaction_class ;
interaction_class:
+ CLASS STRING TRANSPORT TIMESTAMP_TOKEN {
certi::fedparser::startInteraction(); }
+ interaction_class_items { certi::fedparser::endInteraction(); }
+ R_PAR ;
+
+interaction_class:
CLASS STRING TRANSPORT ORDER { certi::fedparser::startInteraction(); }
interaction_class_items { certi::fedparser::endInteraction(); }
R_PAR ;
@@ -195,6 +211,10 @@
| parameter_list parameter ;
parameter:
+ PARAMETER TIMESTAMP_TOKEN { certi::fedparser::addParameter(); }
+ R_PAR ;
+
+parameter:
PARAMETER STRING { certi::fedparser::addParameter(); }
R_PAR ;
- certi/libCERTI tokens.ll syntax.yy,
certi-cvs <=