aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.global.in1
-rw-r--r--src/backend/parser/Makefile1
-rw-r--r--src/backend/parser/meson.build2
-rw-r--r--src/backend/parser/scan.l9
-rw-r--r--src/bin/pgbench/exprscan.l9
-rw-r--r--src/bin/psql/Makefile1
-rw-r--r--src/bin/psql/meson.build2
-rw-r--r--src/bin/psql/psqlscanslash.l9
-rw-r--r--src/fe_utils/Makefile1
-rw-r--r--src/fe_utils/meson.build2
-rw-r--r--src/fe_utils/psqlscan.l9
-rw-r--r--src/tools/fix-old-flex-code.pl66
-rwxr-xr-xsrc/tools/pgflex13
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)