cmFortranLexer: Update to flex 2.6
Revise the documented modifications we need to make to the flex-generated source file according to the needs of the new version. Also drop the duplicate copyright notice block from the generated file.
This commit is contained in:
parent
e11cd31fa0
commit
f70c71c5a9
|
@ -3,3 +3,5 @@ cm_sha2.* whitespace=indent-with-non-tab
|
||||||
|
|
||||||
# Preserve indentation style in generated code.
|
# Preserve indentation style in generated code.
|
||||||
cmListFileLexer.c whitespace=-tab-in-indent,-indent-with-non-tab
|
cmListFileLexer.c whitespace=-tab-in-indent,-indent-with-non-tab
|
||||||
|
cmFortranLexer.cxx whitespace=-tab-in-indent,-indent-with-non-tab
|
||||||
|
cmFortranLexer.h whitespace=-tab-in-indent,-indent-with-non-tab
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,26 +1,19 @@
|
||||||
/*============================================================================
|
|
||||||
CMake - Cross Platform Makefile Generator
|
|
||||||
Copyright 2000-2015 Kitware, Inc., Insight Software Consortium
|
|
||||||
|
|
||||||
Distributed under the OSI-approved BSD License (the "License");
|
|
||||||
see accompanying file Copyright.txt for details.
|
|
||||||
|
|
||||||
This software is distributed WITHOUT ANY WARRANTY; without even the
|
|
||||||
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
||||||
See the License for more information.
|
|
||||||
============================================================================*/
|
|
||||||
#ifndef cmFortran_yyHEADER_H
|
#ifndef cmFortran_yyHEADER_H
|
||||||
#define cmFortran_yyHEADER_H 1
|
#define cmFortran_yyHEADER_H 1
|
||||||
#define cmFortran_yyIN_HEADER 1
|
#define cmFortran_yyIN_HEADER 1
|
||||||
|
|
||||||
|
#line 6 "cmFortranLexer.h"
|
||||||
|
|
||||||
|
#line 8 "cmFortranLexer.h"
|
||||||
|
|
||||||
#define YY_INT_ALIGNED short int
|
#define YY_INT_ALIGNED short int
|
||||||
|
|
||||||
/* A lexical scanner generated by flex */
|
/* A lexical scanner generated by flex */
|
||||||
|
|
||||||
#define FLEX_SCANNER
|
#define FLEX_SCANNER
|
||||||
#define YY_FLEX_MAJOR_VERSION 2
|
#define YY_FLEX_MAJOR_VERSION 2
|
||||||
#define YY_FLEX_MINOR_VERSION 5
|
#define YY_FLEX_MINOR_VERSION 6
|
||||||
#define YY_FLEX_SUBMINOR_VERSION 39
|
#define YY_FLEX_SUBMINOR_VERSION 1
|
||||||
#if YY_FLEX_SUBMINOR_VERSION > 0
|
#if YY_FLEX_SUBMINOR_VERSION > 0
|
||||||
#define FLEX_BETA
|
#define FLEX_BETA
|
||||||
#endif
|
#endif
|
||||||
|
@ -99,25 +92,13 @@ typedef unsigned int flex_uint32_t;
|
||||||
|
|
||||||
#endif /* ! FLEXINT_H */
|
#endif /* ! FLEXINT_H */
|
||||||
|
|
||||||
#ifdef __cplusplus
|
/* TODO: this is always defined, so inline it */
|
||||||
|
|
||||||
/* The "const" storage-class-modifier is valid. */
|
|
||||||
#define YY_USE_CONST
|
|
||||||
|
|
||||||
#else /* ! __cplusplus */
|
|
||||||
|
|
||||||
/* C99 requires __STDC__ to be defined as 1. */
|
|
||||||
#if defined (__STDC__)
|
|
||||||
|
|
||||||
#define YY_USE_CONST
|
|
||||||
|
|
||||||
#endif /* defined (__STDC__) */
|
|
||||||
#endif /* ! __cplusplus */
|
|
||||||
|
|
||||||
#ifdef YY_USE_CONST
|
|
||||||
#define yyconst const
|
#define yyconst const
|
||||||
|
|
||||||
|
#if defined(__GNUC__) && __GNUC__ >= 3
|
||||||
|
#define yynoreturn __attribute__((__noreturn__))
|
||||||
#else
|
#else
|
||||||
#define yyconst
|
#define yynoreturn
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* An opaque pointer. */
|
/* An opaque pointer. */
|
||||||
|
@ -163,52 +144,52 @@ typedef size_t yy_size_t;
|
||||||
#ifndef YY_STRUCT_YY_BUFFER_STATE
|
#ifndef YY_STRUCT_YY_BUFFER_STATE
|
||||||
#define YY_STRUCT_YY_BUFFER_STATE
|
#define YY_STRUCT_YY_BUFFER_STATE
|
||||||
struct yy_buffer_state
|
struct yy_buffer_state
|
||||||
{
|
{
|
||||||
FILE *yy_input_file;
|
FILE *yy_input_file;
|
||||||
|
|
||||||
char *yy_ch_buf; /* input buffer */
|
char *yy_ch_buf; /* input buffer */
|
||||||
char *yy_buf_pos; /* current position in input buffer */
|
char *yy_buf_pos; /* current position in input buffer */
|
||||||
|
|
||||||
/* Size of input buffer in bytes, not including room for EOB
|
/* Size of input buffer in bytes, not including room for EOB
|
||||||
* characters.
|
* characters.
|
||||||
*/
|
*/
|
||||||
yy_size_t yy_buf_size;
|
int yy_buf_size;
|
||||||
|
|
||||||
/* Number of characters read into yy_ch_buf, not including EOB
|
/* Number of characters read into yy_ch_buf, not including EOB
|
||||||
* characters.
|
* characters.
|
||||||
*/
|
*/
|
||||||
yy_size_t yy_n_chars;
|
int yy_n_chars;
|
||||||
|
|
||||||
/* Whether we "own" the buffer - i.e., we know we created it,
|
/* Whether we "own" the buffer - i.e., we know we created it,
|
||||||
* and can realloc() it to grow it, and should free() it to
|
* and can realloc() it to grow it, and should free() it to
|
||||||
* delete it.
|
* delete it.
|
||||||
*/
|
*/
|
||||||
int yy_is_our_buffer;
|
int yy_is_our_buffer;
|
||||||
|
|
||||||
/* Whether this is an "interactive" input source; if so, and
|
/* Whether this is an "interactive" input source; if so, and
|
||||||
* if we're using stdio for input, then we want to use getc()
|
* if we're using stdio for input, then we want to use getc()
|
||||||
* instead of fread(), to make sure we stop fetching input after
|
* instead of fread(), to make sure we stop fetching input after
|
||||||
* each newline.
|
* each newline.
|
||||||
*/
|
*/
|
||||||
int yy_is_interactive;
|
int yy_is_interactive;
|
||||||
|
|
||||||
/* Whether we're considered to be at the beginning of a line.
|
/* Whether we're considered to be at the beginning of a line.
|
||||||
* If so, '^' rules will be active on the next match, otherwise
|
* If so, '^' rules will be active on the next match, otherwise
|
||||||
* not.
|
* not.
|
||||||
*/
|
*/
|
||||||
int yy_at_bol;
|
int yy_at_bol;
|
||||||
|
|
||||||
int yy_bs_lineno; /**< The line count. */
|
int yy_bs_lineno; /**< The line count. */
|
||||||
int yy_bs_column; /**< The column count. */
|
int yy_bs_column; /**< The column count. */
|
||||||
|
|
||||||
/* Whether to try to fill the input buffer when we reach the
|
/* Whether to try to fill the input buffer when we reach the
|
||||||
* end of it.
|
* end of it.
|
||||||
*/
|
*/
|
||||||
int yy_fill_buffer;
|
int yy_fill_buffer;
|
||||||
|
|
||||||
int yy_buffer_status;
|
int yy_buffer_status;
|
||||||
|
|
||||||
};
|
};
|
||||||
#endif /* !YY_STRUCT_YY_BUFFER_STATE */
|
#endif /* !YY_STRUCT_YY_BUFFER_STATE */
|
||||||
|
|
||||||
void cmFortran_yyrestart (FILE *input_file ,yyscan_t yyscanner );
|
void cmFortran_yyrestart (FILE *input_file ,yyscan_t yyscanner );
|
||||||
|
@ -221,7 +202,7 @@ void cmFortran_yypop_buffer_state (yyscan_t yyscanner );
|
||||||
|
|
||||||
YY_BUFFER_STATE cmFortran_yy_scan_buffer (char *base,yy_size_t size ,yyscan_t yyscanner );
|
YY_BUFFER_STATE cmFortran_yy_scan_buffer (char *base,yy_size_t size ,yyscan_t yyscanner );
|
||||||
YY_BUFFER_STATE cmFortran_yy_scan_string (yyconst char *yy_str ,yyscan_t yyscanner );
|
YY_BUFFER_STATE cmFortran_yy_scan_string (yyconst char *yy_str ,yyscan_t yyscanner );
|
||||||
YY_BUFFER_STATE cmFortran_yy_scan_bytes (yyconst char *bytes,yy_size_t len ,yyscan_t yyscanner );
|
YY_BUFFER_STATE cmFortran_yy_scan_bytes (yyconst char *bytes,int len ,yyscan_t yyscanner );
|
||||||
|
|
||||||
void *cmFortran_yyalloc (yy_size_t ,yyscan_t yyscanner );
|
void *cmFortran_yyalloc (yy_size_t ,yyscan_t yyscanner );
|
||||||
void *cmFortran_yyrealloc (void *,yy_size_t ,yyscan_t yyscanner );
|
void *cmFortran_yyrealloc (void *,yy_size_t ,yyscan_t yyscanner );
|
||||||
|
@ -229,7 +210,7 @@ void cmFortran_yyfree (void * ,yyscan_t yyscanner );
|
||||||
|
|
||||||
/* Begin user sect3 */
|
/* Begin user sect3 */
|
||||||
|
|
||||||
#define cmFortran_yywrap(yyscanner) 1
|
#define cmFortran_yywrap(yyscanner) (/*CONSTCOND*/1)
|
||||||
#define YY_SKIP_YYWRAP
|
#define YY_SKIP_YYWRAP
|
||||||
|
|
||||||
#define yytext_ptr yytext_r
|
#define yytext_ptr yytext_r
|
||||||
|
@ -243,6 +224,14 @@ void cmFortran_yyfree (void * ,yyscan_t yyscanner );
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef YY_NO_UNISTD_H
|
||||||
|
/* Special case for "unistd.h", since it is non-ANSI. We include it way
|
||||||
|
* down here because we want the user's section 1 to have been scanned first.
|
||||||
|
* The user has a chance to override it with an option.
|
||||||
|
*/
|
||||||
|
#include <unistd.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef YY_EXTRA_TYPE
|
#ifndef YY_EXTRA_TYPE
|
||||||
#define YY_EXTRA_TYPE void *
|
#define YY_EXTRA_TYPE void *
|
||||||
#endif
|
#endif
|
||||||
|
@ -266,23 +255,23 @@ void cmFortran_yyset_extra (YY_EXTRA_TYPE user_defined ,yyscan_t yyscanner );
|
||||||
|
|
||||||
FILE *cmFortran_yyget_in (yyscan_t yyscanner );
|
FILE *cmFortran_yyget_in (yyscan_t yyscanner );
|
||||||
|
|
||||||
void cmFortran_yyset_in (FILE * in_str ,yyscan_t yyscanner );
|
void cmFortran_yyset_in (FILE * _in_str ,yyscan_t yyscanner );
|
||||||
|
|
||||||
FILE *cmFortran_yyget_out (yyscan_t yyscanner );
|
FILE *cmFortran_yyget_out (yyscan_t yyscanner );
|
||||||
|
|
||||||
void cmFortran_yyset_out (FILE * out_str ,yyscan_t yyscanner );
|
void cmFortran_yyset_out (FILE * _out_str ,yyscan_t yyscanner );
|
||||||
|
|
||||||
yy_size_t cmFortran_yyget_leng (yyscan_t yyscanner );
|
int cmFortran_yyget_leng (yyscan_t yyscanner );
|
||||||
|
|
||||||
char *cmFortran_yyget_text (yyscan_t yyscanner );
|
char *cmFortran_yyget_text (yyscan_t yyscanner );
|
||||||
|
|
||||||
int cmFortran_yyget_lineno (yyscan_t yyscanner );
|
int cmFortran_yyget_lineno (yyscan_t yyscanner );
|
||||||
|
|
||||||
void cmFortran_yyset_lineno (int line_number ,yyscan_t yyscanner );
|
void cmFortran_yyset_lineno (int _line_number ,yyscan_t yyscanner );
|
||||||
|
|
||||||
int cmFortran_yyget_column (yyscan_t yyscanner );
|
int cmFortran_yyget_column (yyscan_t yyscanner );
|
||||||
|
|
||||||
void cmFortran_yyset_column (int column_no ,yyscan_t yyscanner );
|
void cmFortran_yyset_column (int _column_no ,yyscan_t yyscanner );
|
||||||
|
|
||||||
/* Macros after this point can all be overridden by user definitions in
|
/* Macros after this point can all be overridden by user definitions in
|
||||||
* section 1.
|
* section 1.
|
||||||
|
@ -348,5 +337,9 @@ extern int cmFortran_yylex (yyscan_t yyscanner);
|
||||||
#undef YY_DECL
|
#undef YY_DECL
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#line 176 "cmFortranLexer.in.l"
|
||||||
|
|
||||||
|
|
||||||
|
#line 344 "cmFortranLexer.h"
|
||||||
#undef cmFortran_yyIN_HEADER
|
#undef cmFortran_yyIN_HEADER
|
||||||
#endif /* cmFortran_yyHEADER_H */
|
#endif /* cmFortran_yyHEADER_H */
|
||||||
|
|
|
@ -24,28 +24,21 @@
|
||||||
|
|
||||||
This file must be translated to C and modified to build everywhere.
|
This file must be translated to C and modified to build everywhere.
|
||||||
|
|
||||||
Run flex like this:
|
Run flex >= 2.6 like this:
|
||||||
|
|
||||||
flex -i --prefix=cmFortran_yy --header-file=cmFortranLexer.h -ocmFortranLexer.cxx cmFortranLexer.in.l
|
flex -i --prefix=cmFortran_yy --header-file=cmFortranLexer.h -ocmFortranLexer.cxx cmFortranLexer.in.l
|
||||||
|
|
||||||
Modify cmFortranLexer.cxx:
|
Modify cmFortranLexer.cxx:
|
||||||
- remove TABs
|
- remove trailing whitespace: sed -i 's/\s*$//' cmFortranLexer.h cmFortranLexer.cxx
|
||||||
- remove use of the 'register' storage class specifier
|
- remove blank lines at end of file
|
||||||
- remove "yyscanner" argument from these methods:
|
|
||||||
yy_fatal_error, cmFortran_yyalloc, cmFortran_yyrealloc, cmFortran_yyfree
|
|
||||||
- remove "yyscanner = NULL" from end of cmFortran_yylex_destroy
|
- remove "yyscanner = NULL" from end of cmFortran_yylex_destroy
|
||||||
- remove all YY_BREAK lines occurring right after return statements
|
- remove all YY_BREAK lines occurring right after return statements
|
||||||
- change while ( 1 ) to for(;;)
|
- add cast in yy_scan_bytes for loop condition of _yybytes_len to size_t
|
||||||
|
|
||||||
Modify cmFortranLexer.h:
|
|
||||||
- remove TABs
|
|
||||||
- remove the yy_init_globals function
|
|
||||||
- remove the block that includes unistd.h
|
|
||||||
- remove #line directives (avoids bogus warning on old Sun)
|
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "cmStandardLexer.h"
|
#include "cmStandardLexer.h"
|
||||||
|
#undef YY_NO_UNPUT
|
||||||
|
|
||||||
#define cmFortranLexer_cxx
|
#define cmFortranLexer_cxx
|
||||||
#include "cmFortranParser.h" /* Interface to parser object. */
|
#include "cmFortranParser.h" /* Interface to parser object. */
|
||||||
|
|
|
@ -73,6 +73,7 @@ union cmFortran_yystype_u
|
||||||
#define YYSTYPE cmFortran_yystype
|
#define YYSTYPE cmFortran_yystype
|
||||||
#define YYSTYPE_IS_DECLARED 1
|
#define YYSTYPE_IS_DECLARED 1
|
||||||
#if !defined(cmFortranLexer_cxx)
|
#if !defined(cmFortranLexer_cxx)
|
||||||
|
#define YY_NO_UNISTD_H
|
||||||
#include "cmFortranLexer.h"
|
#include "cmFortranLexer.h"
|
||||||
#endif
|
#endif
|
||||||
#if !defined(cmFortranLexer_cxx)
|
#if !defined(cmFortranLexer_cxx)
|
||||||
|
|
Loading…
Reference in New Issue