diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.global.in | 1 | ||||
-rw-r--r-- | src/backend/parser/Makefile | 1 | ||||
-rw-r--r-- | src/backend/parser/meson.build | 2 | ||||
-rw-r--r-- | src/backend/parser/scan.l | 9 | ||||
-rw-r--r-- | src/bin/pgbench/exprscan.l | 9 | ||||
-rw-r--r-- | src/bin/psql/Makefile | 1 | ||||
-rw-r--r-- | src/bin/psql/meson.build | 2 | ||||
-rw-r--r-- | src/bin/psql/psqlscanslash.l | 9 | ||||
-rw-r--r-- | src/fe_utils/Makefile | 1 | ||||
-rw-r--r-- | src/fe_utils/meson.build | 2 | ||||
-rw-r--r-- | src/fe_utils/psqlscan.l | 9 | ||||
-rw-r--r-- | src/tools/fix-old-flex-code.pl | 66 | ||||
-rwxr-xr-x | src/tools/pgflex | 13 |
13 files changed, 3 insertions, 122 deletions
diff --git a/src/Makefile.global.in b/src/Makefile.global.in index eac3d001211..1278b7744f4 100644 --- a/src/Makefile.global.in +++ b/src/Makefile.global.in @@ -788,7 +788,6 @@ TAS = @TAS@ %.c: %.l $(FLEX) $(if $(FLEX_NO_BACKUP),-b) $(FLEXFLAGS) -o'$@' $< @$(if $(FLEX_NO_BACKUP),if [ `wc -l <lex.backup` -eq 1 ]; then rm lex.backup; else echo "Scanner requires backup; see lex.backup." 1>&2; exit 1; fi) - $(if $(FLEX_FIX_WARNING),$(PERL) $(top_srcdir)/src/tools/fix-old-flex-code.pl '$@') %.c: %.y $(if $(BISON_CHECK_CMD),$(BISON_CHECK_CMD)) diff --git a/src/backend/parser/Makefile b/src/backend/parser/Makefile index 3162a01f302..8c0fe28d63f 100644 --- a/src/backend/parser/Makefile +++ b/src/backend/parser/Makefile @@ -59,7 +59,6 @@ gram.c: BISON_CHECK_CMD = $(PERL) $(srcdir)/check_keywords.pl $< $(top_srcdir)/s scan.c: FLEXFLAGS = -CF -p -p scan.c: FLEX_NO_BACKUP=yes -scan.c: FLEX_FIX_WARNING=yes # Force these dependencies to be known even without dependency info built: diff --git a/src/backend/parser/meson.build b/src/backend/parser/meson.build index 4c3ca25dd49..874aa749aa6 100644 --- a/src/backend/parser/meson.build +++ b/src/backend/parser/meson.build @@ -30,7 +30,7 @@ parser_sources = files('parser.c') backend_scanner = custom_target('scan', input: 'scan.l', output: 'scan.c', - command: [flex_cmd, '--no-backup', '--fix-warnings', '--', '-CF', '-p', '-p'], + command: [flex_cmd, '--no-backup', '--', '-CF', '-p', '-p'], ) generated_sources += backend_scanner parser_sources += backend_scanner diff --git a/src/backend/parser/scan.l b/src/backend/parser/scan.l index 8031a78b908..08990831fe8 100644 --- a/src/backend/parser/scan.l +++ b/src/backend/parser/scan.l @@ -130,15 +130,6 @@ static void addunicode(pg_wchar c, yyscan_t yyscanner); static void check_string_escape_warning(unsigned char ychar, core_yyscan_t yyscanner); static void check_escape_warning(core_yyscan_t yyscanner); -/* - * Work around a bug in flex 2.5.35: it emits a couple of functions that - * it forgets to emit declarations for. Since we use -Wmissing-prototypes, - * this would cause warnings. Providing our own declarations should be - * harmless even when the bug gets fixed. - */ -extern int core_yyget_column(yyscan_t yyscanner); -extern void core_yyset_column(int column_no, yyscan_t yyscanner); - %} %option reentrant diff --git a/src/bin/pgbench/exprscan.l b/src/bin/pgbench/exprscan.l index a1cd232248f..46f6ea05121 100644 --- a/src/bin/pgbench/exprscan.l +++ b/src/bin/pgbench/exprscan.l @@ -44,15 +44,6 @@ static const char *expr_command = NULL; /* indicates whether last yylex() call read a newline */ static bool last_was_newline = false; -/* - * Work around a bug in flex 2.5.35: it emits a couple of functions that - * it forgets to emit declarations for. Since we use -Wmissing-prototypes, - * this would cause warnings. Providing our own declarations should be - * harmless even when the bug gets fixed. - */ -extern int expr_yyget_column(yyscan_t yyscanner); -extern void expr_yyset_column(int column_no, yyscan_t yyscanner); - /* LCOV_EXCL_START */ %} diff --git a/src/bin/psql/Makefile b/src/bin/psql/Makefile index e9e4ade1d2e..5b1545d9948 100644 --- a/src/bin/psql/Makefile +++ b/src/bin/psql/Makefile @@ -60,7 +60,6 @@ sql_help.h: create_help.pl $(wildcard $(REFDOCDIR)/*.sgml) psqlscanslash.c: FLEXFLAGS = -Cfe -p -p psqlscanslash.c: FLEX_NO_BACKUP=yes -psqlscanslash.c: FLEX_FIX_WARNING=yes tab-complete.c: gen_tabcomplete.pl tab-complete.in.c $(PERL) $^ --outfile $@ diff --git a/src/bin/psql/meson.build b/src/bin/psql/meson.build index c2ef14ccead..f795ff28271 100644 --- a/src/bin/psql/meson.build +++ b/src/bin/psql/meson.build @@ -19,7 +19,7 @@ psql_sources = files( psqlscanslash = custom_target('psqlscanslash', input: 'psqlscanslash.l', output: 'psqlscanslash.c', - command: [flex_cmd, '--no-backup', '--fix-warnings', '--', '-Cfe', '-p', '-p']) + command: [flex_cmd, '--no-backup', '--', '-Cfe', '-p', '-p']) generated_sources += psqlscanslash psql_sources += psqlscanslash diff --git a/src/bin/psql/psqlscanslash.l b/src/bin/psql/psqlscanslash.l index f76b7722ac7..ae7602a61df 100644 --- a/src/bin/psql/psqlscanslash.l +++ b/src/bin/psql/psqlscanslash.l @@ -57,15 +57,6 @@ static void evaluate_backtick(PsqlScanState state); #define ECHO psqlscan_emit(cur_state, yytext, yyleng) -/* - * Work around a bug in flex 2.5.35: it emits a couple of functions that - * it forgets to emit declarations for. Since we use -Wmissing-prototypes, - * this would cause warnings. Providing our own declarations should be - * harmless even when the bug gets fixed. - */ -extern int slash_yyget_column(yyscan_t yyscanner); -extern void slash_yyset_column(int column_no, yyscan_t yyscanner); - /* LCOV_EXCL_START */ %} diff --git a/src/fe_utils/Makefile b/src/fe_utils/Makefile index f9ca5de2805..28196ce0f6a 100644 --- a/src/fe_utils/Makefile +++ b/src/fe_utils/Makefile @@ -51,7 +51,6 @@ libpgfeutils.a: $(OBJS) psqlscan.c: FLEXFLAGS = -Cfe -p -p psqlscan.c: FLEX_NO_BACKUP=yes -psqlscan.c: FLEX_FIX_WARNING=yes # libpgfeutils could be useful to contrib, so install it install: all installdirs diff --git a/src/fe_utils/meson.build b/src/fe_utils/meson.build index 171268d65e1..a18cbc939e4 100644 --- a/src/fe_utils/meson.build +++ b/src/fe_utils/meson.build @@ -23,7 +23,7 @@ fe_utils_sources = files( psqlscan = custom_target('psqlscan', input: 'psqlscan.l', output: 'psqlscan.c', - command: [flex_cmd, '--no-backup', '--fix-warnings', '--', '-Cfe', '-p', '-p'], + command: [flex_cmd, '--no-backup', '--', '-Cfe', '-p', '-p'], ) generated_sources += psqlscan fe_utils_sources += psqlscan diff --git a/src/fe_utils/psqlscan.l b/src/fe_utils/psqlscan.l index e1cb726f326..b3c6b88e9ca 100644 --- a/src/fe_utils/psqlscan.l +++ b/src/fe_utils/psqlscan.l @@ -61,15 +61,6 @@ typedef int YYSTYPE; #define ECHO psqlscan_emit(cur_state, yytext, yyleng) -/* - * Work around a bug in flex 2.5.35: it emits a couple of functions that - * it forgets to emit declarations for. Since we use -Wmissing-prototypes, - * this would cause warnings. Providing our own declarations should be - * harmless even when the bug gets fixed. - */ -extern int psql_yyget_column(yyscan_t yyscanner); -extern void psql_yyset_column(int column_no, yyscan_t yyscanner); - %} %option reentrant diff --git a/src/tools/fix-old-flex-code.pl b/src/tools/fix-old-flex-code.pl deleted file mode 100644 index c1c91db114c..00000000000 --- a/src/tools/fix-old-flex-code.pl +++ /dev/null @@ -1,66 +0,0 @@ -#!/usr/bin/perl -#---------------------------------------------------------------------- -# -# fix-old-flex-code.pl -# -# flex versions before 2.5.36, with certain option combinations, produce -# code that causes an "unused variable" warning. That's annoying, so -# let's suppress it by inserting a dummy reference to the variable. -# (That's exactly what 2.5.36 and later do ...) -# -# Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group -# Portions Copyright (c) 1994, Regents of the University of California -# -# src/tools/fix-old-flex-code.pl -# -#---------------------------------------------------------------------- - -use strict; -use warnings FATAL => 'all'; - -# Get command line argument. -usage() if $#ARGV != 0; -my $filename = shift; - -# Suck in the whole file. -local $/ = undef; -my $cfile; -open($cfile, '<', $filename) || die "opening $filename for reading: $!"; -my $ccode = <$cfile>; -close($cfile); - -# No need to do anything if it's not flex 2.5.x for x < 36. -exit 0 if $ccode !~ m/^#define YY_FLEX_MAJOR_VERSION 2$/m; -exit 0 if $ccode !~ m/^#define YY_FLEX_MINOR_VERSION 5$/m; -exit 0 if $ccode !~ m/^#define YY_FLEX_SUBMINOR_VERSION (\d+)$/m; -exit 0 if $1 >= 36; - -# Apply the desired patch. -$ccode =~ - s|(struct yyguts_t \* yyg = \(struct yyguts_t\*\)yyscanner; /\* This var may be unused depending upon options. \*/ -.*?) - return yy_is_jam \? 0 : yy_current_state; -|$1 - (void) yyg; - return yy_is_jam ? 0 : yy_current_state; -|s; - -# Write the modified file back out. -open($cfile, '>', $filename) || die "opening $filename for writing: $!"; -print $cfile $ccode; -close($cfile); - -exit 0; - - -sub usage -{ - die <<EOM; -Usage: fix-old-flex-code.pl c-file-name - -fix-old-flex-code.pl modifies a flex output file to suppress -an unused-variable warning that occurs with older flex versions. - -Report bugs to <pgsql-bugs\@lists.postgresql.org>. -EOM -} diff --git a/src/tools/pgflex b/src/tools/pgflex index baabe2df1c8..3986b06874e 100755 --- a/src/tools/pgflex +++ b/src/tools/pgflex @@ -4,7 +4,6 @@ # Wrapper around flex that: # - ensures lex.backup is created in a private directory # - can error out if lex.backup is created (--no-backup) -# - can fix warnings (--fix-warnings) # - works around concurrency issues with win_flex.exe: # https://github.com/lexxmark/winflexbison/issues/86 @@ -28,8 +27,6 @@ parser.add_argument('-o', dest='output_file', type=abspath, required=True, parser.add_argument('-i', dest='input_file', type=abspath, help='input file') -parser.add_argument('--fix-warnings', action='store_true', - help='whether to fix warnings in generated file') parser.add_argument('--no-backup', action='store_true', help='whether no_backup is enabled or not') @@ -72,14 +69,4 @@ if args.no_backup: sys.exit('Scanner requires backup; see lex.backup.') os.remove('lex.backup') -# fix warnings -if args.fix_warnings: - fix_warning_script = os.path.join(args.srcdir, - 'src/tools/fix-old-flex-code.pl') - - command = [args.perl, fix_warning_script, args.output_file] - sp = subprocess.run(command) - if sp.returncode != 0: - sys.exit(sp.returncode) - sys.exit(0) |