source@mandoc.bsd.lv
 help / color / mirror / Atom feed
* mdocml: Finally make mdoc argv CPP-defines into a proper enum.
@ 2010-07-21  9:08 kristaps
  0 siblings, 0 replies; only message in thread
From: kristaps @ 2010-07-21  9:08 UTC (permalink / raw)
  To: source

Log Message:
-----------
Finally make mdoc argv CPP-defines into a proper enum.

Modified Files:
--------------
    mdocml:
        mdoc.h
        mdoc_argv.c
        mdoc_validate.c

Revision Data
-------------
Index: mdoc_validate.c
===================================================================
RCS file: /usr/vhosts/mdocml.bsd.lv/cvs/mdocml/mdoc_validate.c,v
retrieving revision 1.112
retrieving revision 1.113
diff -Lmdoc_validate.c -Lmdoc_validate.c -u -p -r1.112 -r1.113
--- mdoc_validate.c
+++ mdoc_validate.c
@@ -624,6 +624,8 @@ pre_bl(PRE_ARGS)
 			if ( ! mdoc_nmsg(mdoc, n, MANDOCERR_IGNARGV))
 				return(0);
 			break;
+		default:
+			continue;
 		}
 
 		/* Check: duplicate auxiliary arguments. */
@@ -946,7 +948,7 @@ static int
 post_bf(POST_ARGS)
 {
 	struct mdoc_node *np;
-	int		  arg;
+	enum mdocargt	  arg;
 
 	/*
 	 * Unlike other data pointers, these are "housed" by the HEAD
Index: mdoc.h
===================================================================
RCS file: /usr/vhosts/mdocml.bsd.lv/cvs/mdocml/mdoc.h,v
retrieving revision 1.101
retrieving revision 1.102
diff -Lmdoc.h -Lmdoc.h -u -p -r1.101 -r1.102
--- mdoc.h
+++ mdoc.h
@@ -155,35 +155,36 @@ enum	mdoct {
 
 /* What follows is a list of ALL possible macro arguments. */
 
-/* FIXME: make this into an enum. */
-#define	MDOC_Split	 0
-#define	MDOC_Nosplit	 1
-#define	MDOC_Ragged	 2
-#define	MDOC_Unfilled	 3
-#define	MDOC_Literal	 4
-#define	MDOC_File	 5
-#define	MDOC_Offset	 6
-#define	MDOC_Bullet	 7
-#define	MDOC_Dash	 8
-#define	MDOC_Hyphen	 9
-#define	MDOC_Item	 10
-#define	MDOC_Enum	 11
-#define	MDOC_Tag	 12
-#define	MDOC_Diag	 13
-#define	MDOC_Hang	 14
-#define	MDOC_Ohang	 15
-#define	MDOC_Inset	 16
-#define	MDOC_Column	 17
-#define	MDOC_Width	 18
-#define	MDOC_Compact	 19
-#define	MDOC_Std	 20
-#define	MDOC_Filled	 21
-#define	MDOC_Words	 22
-#define	MDOC_Emphasis	 23
-#define	MDOC_Symbolic	 24
-#define	MDOC_Nested	 25
-#define	MDOC_Centred	 26
-#define	MDOC_ARG_MAX	 27
+enum	mdocargt {
+	MDOC_Split,
+	MDOC_Nosplit,
+	MDOC_Ragged,
+	MDOC_Unfilled,
+	MDOC_Literal,
+	MDOC_File,
+	MDOC_Offset,
+	MDOC_Bullet,
+	MDOC_Dash,
+	MDOC_Hyphen,
+	MDOC_Item,
+	MDOC_Enum,
+	MDOC_Tag,
+	MDOC_Diag,
+	MDOC_Hang,
+	MDOC_Ohang,
+	MDOC_Inset,
+	MDOC_Column,
+	MDOC_Width,
+	MDOC_Compact,
+	MDOC_Std,
+	MDOC_Filled,
+	MDOC_Words,
+	MDOC_Emphasis,
+	MDOC_Symbolic,
+	MDOC_Nested,
+	MDOC_Centred,
+	MDOC_ARG_MAX
+};
 
 /* Type of a syntax node. */
 enum	mdoc_type {
@@ -236,7 +237,7 @@ struct	mdoc_meta {
 
 /* An argument to a macro (multiple values = `It -column'). */
 struct	mdoc_argv {
-	int	  	  arg;
+	enum mdocargt  	  arg;
 	int		  line;
 	int		  pos;
 	size_t		  sz;
Index: mdoc_argv.c
===================================================================
RCS file: /usr/vhosts/mdocml.bsd.lv/cvs/mdocml/mdoc_argv.c,v
retrieving revision 1.56
retrieving revision 1.57
diff -Lmdoc_argv.c -Lmdoc_argv.c -u -p -r1.56 -r1.57
--- mdoc_argv.c
+++ mdoc_argv.c
@@ -45,7 +45,7 @@
 
 #define	MULTI_STEP	 5
 
-static	int		 argv_a2arg(enum mdoct, const char *);
+static	enum mdocargt	 argv_a2arg(enum mdoct, const char *);
 static	enum margserr	 args(struct mdoc *, int, int *, 
 				char *, int, char **);
 static	int		 argv(struct mdoc *, int, 
@@ -313,7 +313,7 @@ mdoc_argv_free(struct mdoc_arg *p)
 void
 mdoc_argn_free(struct mdoc_arg *p, int iarg)
 {
-	struct mdoc_argv *arg = &p->argv[iarg];
+	struct mdoc_argv *arg = &p->argv[iarg]; /* FIXME: decl/assign */
 	int		  j;
 
 	if (arg->sz && arg->value) {
@@ -583,7 +583,7 @@ args(struct mdoc *m, int line, int *pos,
 }
 
 
-static int
+static enum mdocargt
 argv_a2arg(enum mdoct tok, const char *p)
 {
 
--
 To unsubscribe send an email to source+unsubscribe@mdocml.bsd.lv

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2010-07-21  9:08 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-21  9:08 mdocml: Finally make mdoc argv CPP-defines into a proper enum kristaps

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).