bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] Automatically generate parser.h.


From: Flavio Cruz
Subject: [PATCH] Automatically generate parser.h.
Date: Mon, 14 Mar 2016 16:22:34 -0400
User-agent: Mutt/1.5.24 (2015-08-30)

* Makefile.am: Set AM_YFLAGS to -d to generate parser.h. Add parser.h to
CLEANFILES and include parser.h as a dependency of lexxer.c.
* lexxer.l: Declare yyerror here.
* parser.h: Remove file since yacc will generate the same content
automatically.
---
 Makefile.am |  6 ++++-
 lexxer.l    |  2 ++
 parser.h    | 90 -------------------------------------------------------------
 3 files changed, 7 insertions(+), 91 deletions(-)
 delete mode 100644 parser.h

diff --git a/Makefile.am b/Makefile.am
index 3e6dfcf..65737be 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -3,9 +3,11 @@
 libexec_PROGRAMS = migcom
 bin_SCRIPTS = mig
 
+AM_YFLAGS = -d
+
 EXTRA_DIST = gensym.awk cpu.sym
 
-CLEANFILES = cpu.h *.sym[co] lexxer.c parser.c
+CLEANFILES = cpu.h *.sym[co] lexxer.c parser.c parser.h
 
 AWK_V = $(AWK_V_$(V))
 AWK_V_ = $(AWK_V_$(AM_DEFAULT_VERBOSITY))
@@ -29,6 +31,8 @@ SUFFIXES = .h .symo .symc .sym
            $< > $@
 cpu.symc: $(srcdir)/gensym.awk
 
+lexxer.c: parser.h
+
 $(migcom_OBJECTS): cpu.h
 
 #
diff --git a/lexxer.l b/lexxer.l
index 7ff5677..c71f85a 100644
--- a/lexxer.l
+++ b/lexxer.l
@@ -85,6 +85,8 @@ FileName      ({QString}|{AString})
 
 extern YYSTYPE yylval;         /* added by rm */
 
+extern void yyerror(const char *);
+
 int lineno;
 char *inname;
 
diff --git a/parser.h b/parser.h
deleted file mode 100644
index 96e9b5d..0000000
--- a/parser.h
+++ /dev/null
@@ -1,90 +0,0 @@
-typedef union
-{
-    u_int number;
-    identifier_t identifier;
-    const_string_t string;
-    statement_kind_t statement_kind;
-    ipc_type_t *type;
-    struct
-    {
-       u_int innumber;         /* msgt_name value, when sending */
-       const_string_t instr;
-       u_int outnumber;        /* msgt_name value, when receiving */
-       const_string_t outstr;
-       u_int size;             /* 0 means there is no default size */
-    } symtype;
-    routine_t *routine;
-    arg_kind_t direction;
-    argument_t *argument;
-    ipc_flags_t flag;
-} YYSTYPE;
-#define        sySkip  258
-#define        syRoutine       259
-#define        sySimpleRoutine 260
-#define        sySimpleProcedure       261
-#define        syProcedure     262
-#define        syFunction      263
-#define        sySubsystem     264
-#define        syKernelUser    265
-#define        syKernelServer  266
-#define        syMsgOption     267
-#define        syMsgSeqno      268
-#define        syWaitTime      269
-#define        syNoWaitTime    270
-#define        syErrorProc     271
-#define        syServerPrefix  272
-#define        syUserPrefix    273
-#define        syServerDemux   274
-#define        syRCSId 275
-#define        syImport        276
-#define        syUImport       277
-#define        sySImport       278
-#define        syIn    279
-#define        syOut   280
-#define        syInOut 281
-#define        syRequestPort   282
-#define        syReplyPort     283
-#define        sySReplyPort    284
-#define        syUReplyPort    285
-#define        syType  286
-#define        syArray 287
-#define        syStruct        288
-#define        syOf    289
-#define        syInTran        290
-#define        syOutTran       291
-#define        syDestructor    292
-#define        syCType 293
-#define        syCUserType     294
-#define        syCServerType   295
-#define        syCString       296
-#define        syColon 297
-#define        sySemi  298
-#define        syComma 299
-#define        syPlus  300
-#define        syMinus 301
-#define        syStar  302
-#define        syDiv   303
-#define        syLParen        304
-#define        syRParen        305
-#define        syEqual 306
-#define        syCaret 307
-#define        syTilde 308
-#define        syLAngle        309
-#define        syRAngle        310
-#define        syLBrack        311
-#define        syRBrack        312
-#define        syBar   313
-#define        syError 314
-#define        syNumber        315
-#define        sySymbolicType  316
-#define        syIdentifier    317
-#define        syString        318
-#define        syQString       319
-#define        syFileName      320
-#define        syIPCFlag       321
-#define        syInTranPayload 322
-
-
-extern YYSTYPE yylval;
-
-extern void yyerror(const char *);
-- 
2.6.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]