Received: from maia.hub.org (unknown [200.46.204.183]) by mail.postgresql.org (Postfix) with ESMTP id 7D81F633BAF for ; Sun, 12 Jul 2009 23:02:32 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 20026-05 for ; Sun, 12 Jul 2009 23:02:21 -0300 (ADT) Received: from cvs.postgresql.org (cvs.postgresql.org [217.196.146.206]) by mail.postgresql.org (Postfix) with ESMTP id 06D926331A6 for ; Sun, 12 Jul 2009 23:02:22 -0300 (ADT) Received: by cvs.postgresql.org (Postfix, from userid 1007) id 4ACA875331E; Mon, 13 Jul 2009 02:02:20 +0000 (UTC) MIME-Version: 1.0 To: pgsql-committers@postgresql.org Subject: pgsql: Convert the core lexer and parser into fully reentrant code, by X-Mailer: activitymail 1.24, http://search.cpan.org/dist/activitymail/ Content-Type: text/plain Message-Id: <20090713020220.4ACA875331E@cvs.postgresql.org> Date: Mon, 13 Jul 2009 02:02:20 +0000 (UTC) From: tgl@postgresql.org (Tom Lane) X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0 tagged_above=0 required=5 tests=none X-Spam-Level: X-Archive-Number: 200907/127 X-Sequence-Number: 37730 Log Message: ----------- Convert the core lexer and parser into fully reentrant code, by making use of features added to flex and bison since this code was originally written. This change doesn't in itself offer any new capability, but it's needed infrastructure for planned improvements in plpgsql. Another feature now available in flex is the ability to make it use palloc instead of malloc, so do that to avoid possible memory leaks. (We should at some point change the other lexers likewise, but this commit doesn't touch them.) Modified Files: -------------- pgsql/src/backend: nls.mk (r1.27 -> r1.28) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nls.mk?r1=1.27&r2=1.28) pgsql/src/backend/parser: gram.y (r2.667 -> r2.668) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/gram.y?r1=2.667&r2=2.668) parser.c (r1.79 -> r1.80) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parser.c?r1=1.79&r2=1.80) scan.l (r1.154 -> r1.155) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/scan.l?r1=1.154&r2=1.155) pgsql/src/include/parser: gramparse.h (r1.45 -> r1.46) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/parser/gramparse.h?r1=1.45&r2=1.46)