summaryrefslogtreecommitdiff
path: root/usr.bin/lex/libmain.c
diff options
context:
space:
mode:
authorTed Unangst <tedu@cvs.openbsd.org>2015-11-19 19:43:41 +0000
committerTed Unangst <tedu@cvs.openbsd.org>2015-11-19 19:43:41 +0000
commit3ed71134b00d13f674ae555d489ed3f7c262c849 (patch)
tree5366e49076abb45d59627f9ccce444d886065259 /usr.bin/lex/libmain.c
parent77d522ada02becf96f1a46c2dfc83c03dc2d48dc (diff)
Update flex from ancient 2.5.4 to the recent 2.5.39.
This work was all done by Serguey Parkhomovsky. Thanks. Some changes from upstream: * Removed autotools cruft/localization/texinfo manual/etc * Kept the old manpage, as the new manpage is content-free * Used safe string handling functions and fixed several compiler warnings * pledge(2). Flex 2.5.39 now forks/execs its filter chains and needs proc exec in addition to what was previously pledged * Removed register keyword from all variable declarations * renamed parse.c, parse.h, scan.c, skel.c with init prefix so compiling flex outside of obj by accident wouldn't clobber the bootstrap files * Minor fixes (spelling, accessing buf[strlen(buf) - 1] for zero-length strings in initscan.c/scan.l, etc) that were already in our tree This is a huge change, so it's going in the tree code bomb style. I'm not excited about the growth in complexity (like now running m4 to _post_ process lexers) but hopefully this will be a one time update and we will now take "ownership" of the code.
Diffstat (limited to 'usr.bin/lex/libmain.c')
-rw-r--r--usr.bin/lex/libmain.c34
1 files changed, 25 insertions, 9 deletions
diff --git a/usr.bin/lex/libmain.c b/usr.bin/lex/libmain.c
index 417155f2b0d..37bc4ee1347 100644
--- a/usr.bin/lex/libmain.c
+++ b/usr.bin/lex/libmain.c
@@ -1,19 +1,35 @@
-/* $OpenBSD: libmain.c,v 1.7 2012/12/05 23:20:25 deraadt Exp $ */
+/* $OpenBSD: libmain.c,v 1.8 2015/11/19 19:43:40 tedu Exp $ */
/* libmain - flex run-time support library "main" function */
-/* $Header: /cvs/OpenBSD/src/usr.bin/lex/libmain.c,v 1.7 2012/12/05 23:20:25 deraadt Exp $ */
+/* This file is part of flex. */
+/* Redistribution and use in source and binary forms, with or without */
+/* modification, are permitted provided that the following conditions */
+/* are met: */
-int yylex(void);
-int main(int, char **);
+/* 1. Redistributions of source code must retain the above copyright */
+/* notice, this list of conditions and the following disclaimer. */
+/* 2. Redistributions in binary form must reproduce the above copyright */
+/* notice, this list of conditions and the following disclaimer in the */
+/* documentation and/or other materials provided with the distribution. */
-/* ARGSUSED */
-int
-main(int argc, char *argv[])
+/* Neither the name of the University nor the names of its contributors */
+/* may be used to endorse or promote products derived from this software */
+/* without specific prior written permission. */
+
+/* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR */
+/* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED */
+/* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR */
+/* PURPOSE. */
+
+extern int yylex ();
+
+int main (argc, argv)
+ int argc;
+ char *argv[];
{
- while (yylex() != 0)
- ;
+ while (yylex () != 0) ;
return 0;
}