sbuild (Debian sbuild) 0.62.6 (07 Dec 2011) on build02.raspbian.lan ╔══════════════════════════════════════════════════════════════════════════════╗ ║ kelbt 0.15-1 (armhf) 10 Jun 2012 21:30 ║ ╚══════════════════════════════════════════════════════════════════════════════╝ Package: kelbt Version: 0.15-1 Source Version: 0.15-1 Distribution: testing Architecture: armhf I: NOTICE: Log filtering will replace 'build/kelbt-UKfCZX/kelbt-0.15' with '«PKGBUILDDIR»' I: NOTICE: Log filtering will replace 'build/kelbt-UKfCZX' with '«BUILDDIR»' I: NOTICE: Log filtering will replace 'var/lib/schroot/mount/testing-armhf-sbuild-5f426bf7-4a2b-4fb4-9e93-4cda192f3aee' with '«CHROOT»' ┌──────────────────────────────────────────────────────────────────────────────┐ │ Update chroot │ └──────────────────────────────────────────────────────────────────────────────┘ Hit http://repo.raspbian.lan testing InRelease Hit http://repo.raspbian.lan testing/main Sources Hit http://repo.raspbian.lan testing/main armhf Packages Ign http://repo.raspbian.lan testing/main Translation-en Reading package lists... ┌──────────────────────────────────────────────────────────────────────────────┐ │ Fetch source files │ └──────────────────────────────────────────────────────────────────────────────┘ Check APT ───────── Checking available source versions... Download source files with APT ────────────────────────────── Reading package lists... Building dependency tree... Reading state information... Need to get 237 kB of source archives. Get:1 http://repo.raspbian.lan/raspbian/ testing/main kelbt 0.15-1 (dsc) [963 B] Get:2 http://repo.raspbian.lan/raspbian/ testing/main kelbt 0.15-1 (tar) [233 kB] Get:3 http://repo.raspbian.lan/raspbian/ testing/main kelbt 0.15-1 (diff) [3705 B] Fetched 237 kB in 0s (2389 kB/s) Download complete and in download only mode Check arch ────────── Merged Build-Depends: build-essential, fakeroot Filtered Build-Depends: build-essential, fakeroot dpkg-deb: building package `sbuild-build-depends-core-dummy' in `/«BUILDDIR»/resolver-58bCGB/apt_archive/sbuild-build-depends-core-dummy.deb'. OK Reading package lists... ┌──────────────────────────────────────────────────────────────────────────────┐ │ Install core build dependencies (apt-based resolver) │ └──────────────────────────────────────────────────────────────────────────────┘ Installing build dependencies Reading package lists... Building dependency tree... Reading state information... The following NEW packages will be installed: sbuild-build-depends-core-dummy debconf: delaying package configuration, since apt-utils is not installed 0 upgraded, 1 newly installed, 0 to remove and 10 not upgraded. Need to get 0 B/702 B of archives. After this operation, 0 B of additional disk space will be used. Selecting previously unselected package sbuild-build-depends-core-dummy. (Reading database ... 10660 files and directories currently installed.) Unpacking sbuild-build-depends-core-dummy (from .../sbuild-build-depends-core-dummy.deb) ... Setting up sbuild-build-depends-core-dummy (0.invalid.0) ... Merged Build-Depends: libc6-dev | libc-dev, gcc (>= 4:4.4.3), g++ (>= 4:4.4.3), make, dpkg-dev (>= 1.13.5), debhelper (>= 7) Filtered Build-Depends: libc6-dev, gcc (>= 4:4.4.3), g++ (>= 4:4.4.3), make, dpkg-dev (>= 1.13.5), debhelper (>= 7) dpkg-deb: building package `sbuild-build-depends-kelbt-dummy' in `/«BUILDDIR»/resolver-9GCNln/apt_archive/sbuild-build-depends-kelbt-dummy.deb'. OK Reading package lists... ┌──────────────────────────────────────────────────────────────────────────────┐ │ Install kelbt build dependencies (apt-based resolver) │ └──────────────────────────────────────────────────────────────────────────────┘ Installing build dependencies Reading package lists... Building dependency tree... Reading state information... The following extra packages will be installed: bsdmainutils debhelper file gettext gettext-base groff-base html2text intltool-debian libasprintf0c2 libcroco3 libffi5 libgettextpo0 libglib2.0-0 libmagic1 libpcre3 libpipeline1 libunistring0 libxml2 man-db po-debconf Suggested packages: wamerican wordlist whois vacation dh-make gettext-doc groff less www-browser libmail-box-perl Recommended packages: curl wget lynx-cur autopoint libglib2.0-data shared-mime-info xml-core libmail-sendmail-perl The following NEW packages will be installed: bsdmainutils debhelper file gettext gettext-base groff-base html2text intltool-debian libasprintf0c2 libcroco3 libffi5 libgettextpo0 libglib2.0-0 libmagic1 libpcre3 libpipeline1 libunistring0 libxml2 man-db po-debconf sbuild-build-depends-kelbt-dummy debconf: delaying package configuration, since apt-utils is not installed 0 upgraded, 21 newly installed, 0 to remove and 10 not upgraded. Need to get 0 B/9420 kB of archives. After this operation, 24.3 MB of additional disk space will be used. Selecting previously unselected package libpcre3:armhf. (Reading database ... 10660 files and directories currently installed.) Unpacking libpcre3:armhf (from .../libpcre3_1%3a8.30-5_armhf.deb) ... Selecting previously unselected package libpipeline1:armhf. Unpacking libpipeline1:armhf (from .../libpipeline1_1.2.1-1_armhf.deb) ... Selecting previously unselected package libasprintf0c2:armhf. Unpacking libasprintf0c2:armhf (from .../libasprintf0c2_0.18.1.1-8_armhf.deb) ... Selecting previously unselected package libmagic1:armhf. Unpacking libmagic1:armhf (from .../libmagic1_5.11-1_armhf.deb) ... Selecting previously unselected package libxml2:armhf. Unpacking libxml2:armhf (from .../libxml2_2.7.8.dfsg-9.1_armhf.deb) ... Selecting previously unselected package libffi5:armhf. Unpacking libffi5:armhf (from .../libffi5_3.0.10-3+b3_armhf.deb) ... Selecting previously unselected package libglib2.0-0:armhf. Unpacking libglib2.0-0:armhf (from .../libglib2.0-0_2.32.3-1_armhf.deb) ... Selecting previously unselected package libcroco3:armhf. Unpacking libcroco3:armhf (from .../libcroco3_0.6.5-1_armhf.deb) ... Selecting previously unselected package libunistring0:armhf. Unpacking libunistring0:armhf (from .../libunistring0_0.9.3-5_armhf.deb) ... Selecting previously unselected package libgettextpo0:armhf. Unpacking libgettextpo0:armhf (from .../libgettextpo0_0.18.1.1-8_armhf.deb) ... Selecting previously unselected package bsdmainutils. Unpacking bsdmainutils (from .../bsdmainutils_9.0.2_armhf.deb) ... Selecting previously unselected package groff-base. Unpacking groff-base (from .../groff-base_1.21-7_armhf.deb) ... Selecting previously unselected package man-db. Unpacking man-db (from .../man-db_2.6.1-2_armhf.deb) ... Selecting previously unselected package file. Unpacking file (from .../archives/file_5.11-1_armhf.deb) ... Selecting previously unselected package gettext-base. Unpacking gettext-base (from .../gettext-base_0.18.1.1-8_armhf.deb) ... Selecting previously unselected package html2text. Unpacking html2text (from .../html2text_1.3.2a-15_armhf.deb) ... Selecting previously unselected package gettext. Unpacking gettext (from .../gettext_0.18.1.1-8_armhf.deb) ... Selecting previously unselected package intltool-debian. Unpacking intltool-debian (from .../intltool-debian_0.35.0+20060710.1_all.deb) ... Selecting previously unselected package po-debconf. Unpacking po-debconf (from .../po-debconf_1.0.16+nmu2_all.deb) ... Selecting previously unselected package debhelper. Unpacking debhelper (from .../debhelper_9.20120528_all.deb) ... Selecting previously unselected package sbuild-build-depends-kelbt-dummy. Unpacking sbuild-build-depends-kelbt-dummy (from .../sbuild-build-depends-kelbt-dummy.deb) ... Setting up libpcre3:armhf (1:8.30-5) ... Setting up libpipeline1:armhf (1.2.1-1) ... Setting up libasprintf0c2:armhf (0.18.1.1-8) ... Setting up libmagic1:armhf (5.11-1) ... Setting up libxml2:armhf (2.7.8.dfsg-9.1) ... Setting up libffi5:armhf (3.0.10-3+b3) ... Setting up libglib2.0-0:armhf (2.32.3-1) ... No schema files found: doing nothing. Setting up libcroco3:armhf (0.6.5-1) ... Setting up libunistring0:armhf (0.9.3-5) ... Setting up libgettextpo0:armhf (0.18.1.1-8) ... Setting up bsdmainutils (9.0.2) ... update-alternatives: using /usr/bin/bsd-write to provide /usr/bin/write (write) in auto mode. update-alternatives: using /usr/bin/bsd-from to provide /usr/bin/from (from) in auto mode. Setting up groff-base (1.21-7) ... Setting up man-db (2.6.1-2) ... Building database of manual pages ... Setting up file (5.11-1) ... Setting up gettext-base (0.18.1.1-8) ... Setting up html2text (1.3.2a-15) ... Setting up gettext (0.18.1.1-8) ... Setting up intltool-debian (0.35.0+20060710.1) ... Setting up po-debconf (1.0.16+nmu2) ... Setting up debhelper (9.20120528) ... Setting up sbuild-build-depends-kelbt-dummy (0.invalid.0) ... ┌──────────────────────────────────────────────────────────────────────────────┐ │ Build environment │ └──────────────────────────────────────────────────────────────────────────────┘ Kernel: Linux 3.2.0-2-mx5 armhf (armv7l) Toolchain package versions: binutils_2.22-6 dpkg-dev_1.16.3 g++-4.6_4.6.3-1.1+rpi2 gcc-4.6_4.6.3-1.1+rpi2 libc6-dev_2.13-32 libstdc++6_4.7.0-1.1+rpi libstdc++6-4.6-dev_4.6.3-1.1+rpi2 linux-libc-dev_3.2.17-1 Package versions: apt_0.9.3+rpi1 base-files_6.9 base-passwd_3.5.24 bash_4.2-2 binutils_2.22-6 bsdmainutils_9.0.2 bsdutils_1:2.20.1-5 build-essential_11.5+b1 bzip2_1.0.6-1 coreutils_8.13-3.2 cpp_4:4.6.2-4 cpp-4.6_4.6.3-1.1+rpi2 dash_0.5.7-3 debconf_1.5.43 debfoster_2.7-1.1 debhelper_9.20120528 debian-archive-keyring_2012.3 debianutils_4.3 diffutils_1:3.2-6 dpkg_1.16.3 dpkg-dev_1.16.3 e2fslibs_1.42.2-2 e2fsprogs_1.42.2-2 fakeroot_1.18.3-1 file_5.11-1 findutils_4.4.2-4 g++_4:4.6.2-4 g++-4.6_4.6.3-1.1+rpi2 gcc_4:4.6.2-4 gcc-4.4-base_4.4.7-1.1+rpi1 gcc-4.5-base_4.5.3-12+rpi1 gcc-4.6_4.6.3-1.1+rpi2 gcc-4.6-base_4.6.3-1.1+rpi2 gcc-4.7-base_4.7.0-1.1+rpi gettext_0.18.1.1-8 gettext-base_0.18.1.1-8 gnupg_1.4.12-4 gpgv_1.4.12-4 grep_2.12-2 groff-base_1.21-7 gzip_1.4-5 hostname_3.11 html2text_1.3.2a-15 initscripts_2.88dsf-22.1 insserv_1.14.0-3 intltool-debian_0.35.0+20060710.1 libacl1_2.2.51-7 libapt-pkg4.12_0.9.3+rpi1 libasprintf0c2_0.18.1.1-8 libattr1_1:2.4.46-7 libblkid1_2.20.1-5 libbz2-1.0_1.0.6-1 libc-bin_2.13-32 libc-dev-bin_2.13-32 libc6_2.13-32 libc6-dev_2.13-32 libclass-isa-perl_0.36-3 libcomerr2_1.42.2-2 libcroco3_0.6.5-1 libdb5.1_5.1.29-1 libdpkg-perl_1.16.3 libffi5_3.0.10-3+b3 libfile-fcntllock-perl_0.14-1 libgc1c2_1:7.1-8 libgcc1_1:4.7.0-1.1+rpi libgdbm3_1.8.3-10 libgettextpo0_0.18.1.1-8 libglib2.0-0_2.32.3-1 libgmp10_2:5.0.5+dfsg-1.1 libgomp1_4.7.0-1.1+rpi liblocale-gettext-perl_1.05-7 liblzma5_5.1.1alpha+20110809-3 libmagic1_5.11-1 libmount1_2.20.1-5 libmpc2_0.9-4 libmpfr4_3.1.0-5 libncurses5_5.9-7 libncursesw5_5.9-7 libpam-modules_1.1.3-7.1 libpam-modules-bin_1.1.3-7.1 libpam-runtime_1.1.3-7.1 libpam0g_1.1.3-7.1 libpcre3_1:8.30-5 libpipeline1_1.2.1-1 libreadline6_6.2-8 libselinux1_2.1.9-2 libsemanage-common_2.1.6-2 libsemanage1_2.1.6-2 libsepol1_2.1.4-3 libslang2_2.2.4-10 libss2_1.42.2-2 libstdc++6_4.7.0-1.1+rpi libstdc++6-4.6-dev_4.6.3-1.1+rpi2 libswitch-perl_2.16-2 libtext-charwidth-perl_0.04-7 libtext-iconv-perl_1.7-5 libtext-wrapi18n-perl_0.06-7 libtimedate-perl_1.2000-1 libtinfo5_5.9-7 libunistring0_0.9.3-5 libusb-0.1-4_2:0.1.12-20 libustr-1.0-1_1.0.4-2 libuuid1_2.20.1-5 libxml2_2.7.8.dfsg-9.1 linux-libc-dev_3.2.17-1 login_1:4.1.5-1 lsb-base_4.1+Debian4 make_3.81-8.2 man-db_2.6.1-2 mawk_1.3.3-17 mount_2.20.1-5 multiarch-support_2.13-32 ncurses-base_5.9-7 ncurses-bin_5.9-7 passwd_1:4.1.5-1 patch_2.6.1-3 perl_5.14.2-11 perl-base_5.14.2-11 perl-modules_5.14.2-11 po-debconf_1.0.16+nmu2 raspbian-archive-keyring_20120528.2 readline-common_6.2-8 sbuild-build-depends-core-dummy_0.invalid.0 sbuild-build-depends-kelbt-dummy_0.invalid.0 sed_4.2.1-9 sensible-utils_0.0.7 sysv-rc_2.88dsf-22.1 sysvinit_2.88dsf-22.1 sysvinit-utils_2.88dsf-22.1 tar_1.26-4 tzdata_2012c-1 ucf_3.0025+nmu3 util-linux_2.20.1-5 xz-utils_5.1.1alpha+20110809-3 zlib1g_1:1.2.7.dfsg-11 ┌──────────────────────────────────────────────────────────────────────────────┐ │ Build │ └──────────────────────────────────────────────────────────────────────────────┘ Unpack source ───────────── gpgv: keyblock resource `/sbuild-nonexistent/.gnupg/trustedkeys.gpg': file open error gpgv: Signature made Wed May 30 19:12:37 2012 UTC using DSA key ID 145B6966 gpgv: Can't check signature: public key not found dpkg-source: warning: failed to verify signature on ./kelbt_0.15-1.dsc dpkg-source: info: extracting kelbt in kelbt-0.15 dpkg-source: info: unpacking kelbt_0.15.orig.tar.gz dpkg-source: info: applying kelbt_0.15-1.diff.gz dpkg-source: info: upstream files that have been modified: kelbt-0.15/aapl/avlcommon.h kelbt-0.15/aapl/bstcommon.h kelbt-0.15/cxxprep/Makefile Check disc space ──────────────── Sufficient free space for build User Environment ──────────────── HOME=/sbuild-nonexistent LOGNAME=buildd PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin:/usr/games SCHROOT_CHROOT_NAME=testing-armhf-sbuild SCHROOT_COMMAND=env SCHROOT_GID=108 SCHROOT_GROUP=buildd SCHROOT_SESSION_ID=testing-armhf-sbuild-5f426bf7-4a2b-4fb4-9e93-4cda192f3aee SCHROOT_UID=106 SCHROOT_USER=buildd SHELL=/bin/sh TERM=xterm USER=buildd dpkg-buildpackage ───────────────── dpkg-buildpackage: source package kelbt dpkg-buildpackage: source version 0.15-1 dpkg-source --before-build kelbt-0.15 dpkg-buildpackage: host architecture armhf fakeroot debian/rules clean dh_testdir dh_testroot rm -f build-stamp [ ! -f Makefile ] || /usr/bin/make distclean dh_clean dpkg-buildpackage: warning: debian/rules must be updated to support the 'build-arch' and 'build-indep' targets (at least 'build-arch' seems to be missing) debian/rules build dh_testdir ./configure --host=arm-linux-gnueabihf --build=arm-linux-gnueabihf --prefix=/usr --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info CFLAGS="-Wall -g -D_FORTIFY_SOURCE=2 -O2" LDFLAGS="-Wl,-z,relro" checking for arm-linux-gnueabihf-g++... arm-linux-gnueabihf-g++ checking for C++ compiler default output file name... a.out checking whether the C++ compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C++ compiler... yes checking whether arm-linux-gnueabihf-g++ accepts -g... yes checking whether make sets $(MAKE)... yes configure: creating ./config.status config.status: creating Makefile config.status: creating kelbt/Makefile config.status: creating config.h configuration of kelbt complete dh_testdir /usr/bin/make CFLAGS="-Wall -g -D_FORTIFY_SOURCE=2 -O2" LDFLAGS="-Wl,-z,defs -Wl,-z,relro" make[1]: Entering directory `/«PKGBUILDDIR»' make[2]: Entering directory `/«PKGBUILDDIR»/kelbt' arm-linux-gnueabihf-g++ -c -Wall -g -D_FORTIFY_SOURCE=2 -O2 -I../aapl -o pcheck.o pcheck.cpp arm-linux-gnueabihf-g++ -c -Wall -g -D_FORTIFY_SOURCE=2 -O2 -I../aapl -o main.o main.cpp arm-linux-gnueabihf-g++ -c -Wall -g -D_FORTIFY_SOURCE=2 -O2 -I../aapl -o parsedata.o parsedata.cpp arm-linux-gnueabihf-g++ -c -Wall -g -D_FORTIFY_SOURCE=2 -O2 -I../aapl -o closure.o closure.cpp arm-linux-gnueabihf-g++ -c -Wall -g -D_FORTIFY_SOURCE=2 -O2 -I../aapl -o fsmbase.o fsmbase.cpp arm-linux-gnueabihf-g++ -c -Wall -g -D_FORTIFY_SOURCE=2 -O2 -I../aapl -o fsmattach.o fsmattach.cpp arm-linux-gnueabihf-g++ -c -Wall -g -D_FORTIFY_SOURCE=2 -O2 -I../aapl -o fsmgraph.o fsmgraph.cpp arm-linux-gnueabihf-g++ -c -Wall -g -D_FORTIFY_SOURCE=2 -O2 -I../aapl -o codegen.o codegen.cpp arm-linux-gnueabihf-g++ -c -Wall -g -D_FORTIFY_SOURCE=2 -O2 -I../aapl -o gvdotgen.o gvdotgen.cpp arm-linux-gnueabihf-g++ -c -Wall -g -D_FORTIFY_SOURCE=2 -O2 -I../aapl -o klscan.o klscan.cpp arm-linux-gnueabihf-g++ -c -Wall -g -D_FORTIFY_SOURCE=2 -O2 -I../aapl -o klparse.o klparse.cpp arm-linux-gnueabihf-g++ -Wl,-z,defs -Wl,-z,relro -o kelbt pcheck.o main.o parsedata.o closure.o fsmbase.o fsmattach.o fsmgraph.o codegen.o gvdotgen.o klscan.o klparse.o make[2]: Leaving directory `/«PKGBUILDDIR»/kelbt' make[1]: Leaving directory `/«PKGBUILDDIR»' touch build-stamp fakeroot debian/rules binary-arch dh_testdir dh_testroot dh_prep dh_installdirs /usr/bin/make prefix=/«PKGBUILDDIR»/debian/kelbt/usr install make[1]: Entering directory `/«PKGBUILDDIR»' make[2]: Entering directory `/«PKGBUILDDIR»/kelbt' install -d /«PKGBUILDDIR»/debian/kelbt/usr/bin install -s kelbt /«PKGBUILDDIR»/debian/kelbt/usr/bin/kelbt make[2]: Leaving directory `/«PKGBUILDDIR»/kelbt' make[1]: Leaving directory `/«PKGBUILDDIR»' dh_testdir dh_testroot dh_installchangelogs ChangeLog dh_installdocs dh_installexamples dh_installman debian/kelbt.1 dh_link dh_strip # hack to remove unnecessary files rm debian/kelbt/usr/share/doc/kelbt/cxxprep/COPYING dh_compress -Xcxxprep dh_fixperms dh_installdeb dh_shlibdeps dpkg-shlibdeps: warning: debian/kelbt/usr/bin/kelbt contains an unresolvable reference to symbol __aeabi_unwind_cpp_pr1@GCC_3.5: it's probably a plugin. dh_gencontrol dh_md5sums dh_builddeb dpkg-deb: building package `kelbt' in `../kelbt_0.15-1_armhf.deb'. dpkg-genchanges -B -mbuildd >../kelbt_0.15-1_armhf.changes dpkg-genchanges: arch-specific upload - not including arch-independent packages dpkg-genchanges: binary-only upload - not including any source code dpkg-source --after-build kelbt-0.15 dpkg-buildpackage: binary only upload (no source included) ──────────────────────────────────────────────────────────────────────────────── Build finished at 20120610-2134 Finished ──────── I: Built successfully ┌──────────────────────────────────────────────────────────────────────────────┐ │ Changes │ └──────────────────────────────────────────────────────────────────────────────┘ kelbt_0.15-1_armhf.changes: ─────────────────────────── Format: 1.8 Date: Wed, 30 May 2012 19:49:11 +0100 Source: kelbt Binary: kelbt Architecture: armhf Version: 0.15-1 Distribution: testing Urgency: low Maintainer: buildd Changed-By: Robert Lemmen Description: kelbt - backtracking LR parser generator Changes: kelbt (0.15-1) unstable; urgency=low . * New upstream release Checksums-Sha1: 50fba1aa0da390a50b71826b9274caf80403cff8 109896 kelbt_0.15-1_armhf.deb Checksums-Sha256: 56a80145c75c106d0a397379d4ed7e006c5407fb39bf1c913f1751529507e56d 109896 kelbt_0.15-1_armhf.deb Files: 3b2a9f69a8bbe82c5db25a2ce18e1ab3 109896 devel extra kelbt_0.15-1_armhf.deb ┌──────────────────────────────────────────────────────────────────────────────┐ │ Package contents │ └──────────────────────────────────────────────────────────────────────────────┘ kelbt_0.15-1_armhf.deb ────────────────────── new debian package, version 2.0. size 109896 bytes: control archive= 3268 bytes. 1876 bytes, 34 lines control 5936 bytes, 78 lines md5sums Package: kelbt Version: 0.15-1 Architecture: armhf Maintainer: Robert Lemmen Installed-Size: 341 Depends: libc6 (>= 2.13-28), libgcc1 (>= 1:4.4.0), libstdc++6 (>= 4.4.0) Section: devel Priority: extra Description: backtracking LR parser generator Kelbt generates backtracking LALR(1) parsers. Standard LALR(1) parser generators emit an error upon encountering a conflict in the parse tables. Kelbt forges onward, generating parsers which handle conflicts by backtracking at runtime. Kelbt is able to generate a parser for any context-free grammar and therefore implements a generalized parsing method. . Kelbt is different from other backtracking LR systems in two ways. First, it elevates backtracking to the level of semantic actions by introducing a class of actions called undo actions. Undo actions are invoked as the backtracker undoes parsing and allow the user to revert any side effects of forward semantic actions. This makes it possible to backtrack over language constructs which must modify global state in preparation for handling context dependencies. . Second, Kelbt enables a user-controlled parsing strategy which approximates that of generalized recursive-descent parsing with ordered choice. This makes it easy for the user to resolve language ambiguities by ordering the grammar productions of a non-terminal according to precedence. It is approximate in the sense that for most grammars the equivalent of an ordered choice parsing strategy is achieved. In cases where productions are parsed out of the order given, there is a simple grammar transformation which remedies the problem. . As a proof of concept, Kelbt has been used to write a partial C++ parser (included) which is composed of strictly a scanner, a name lookup stage and a grammar with standard semantic actions and semantic undo actions. drwxr-xr-x root/root 0 2012-06-10 21:33 ./ drwxr-xr-x root/root 0 2012-06-10 21:33 ./usr/ drwxr-xr-x root/root 0 2012-06-10 21:33 ./usr/share/ drwxr-xr-x root/root 0 2012-06-10 21:33 ./usr/share/doc/ drwxr-xr-x root/root 0 2012-06-10 21:33 ./usr/share/doc/kelbt/ -rw-r--r-- root/root 4187 2012-01-22 09:35 ./usr/share/doc/kelbt/changelog.gz -rw-r--r-- root/root 284 2012-06-10 21:31 ./usr/share/doc/kelbt/changelog.Debian.gz -rw-r--r-- root/root 328 2007-10-20 16:10 ./usr/share/doc/kelbt/TODO -rw-r--r-- root/root 1513 2007-04-27 10:45 ./usr/share/doc/kelbt/kelbt.vim.gz drwxr-xr-x root/root 0 2012-06-10 21:33 ./usr/share/doc/kelbt/cxxprep/ -rw-r--r-- root/root 34 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/version.mk -rw-r--r-- root/root 8892 2008-10-06 16:04 ./usr/share/doc/kelbt/cxxprep/names.h drwxr-xr-x root/root 0 2012-01-22 09:51 ./usr/share/doc/kelbt/cxxprep/examples/ -rw-r--r-- root/root 534 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/examples/templid.cpp -rw-r--r-- root/root 2165 2008-10-06 16:04 ./usr/share/doc/kelbt/cxxprep/undo.lex -rw-r--r-- root/root 3849 2008-10-06 16:04 ./usr/share/doc/kelbt/cxxprep/main.cpp drwxr-xr-x root/root 0 2012-06-10 21:33 ./usr/share/doc/kelbt/cxxprep/test/ -rw-r--r-- root/root 272 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input25.cpp -rw-r--r-- root/root 199 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output09.cpp -rw-r--r-- root/root 258 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output15.cpp -rw-r--r-- root/root 419 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input14.cpp -rw-r--r-- root/root 230 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input06.cpp -rw-r--r-- root/root 342 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output06.cpp -rw-r--r-- root/root 288 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input17.cpp -rw-r--r-- root/root 91 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input04.cpp -rw-r--r-- root/root 50 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input27.cpp -rw-r--r-- root/root 370 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output10.cpp -rw-r--r-- root/root 171 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output16.cpp -rw-r--r-- root/root 260 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input19.cpp -rw-r--r-- root/root 121 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output04.cpp -rw-r--r-- root/root 326 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output11.cpp -rw-r--r-- root/root 506 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input02.cpp -rw-r--r-- root/root 87 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input26.cpp -rw-r--r-- root/root 329 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output19.cpp -rw-r--r-- root/root 299 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input03.cpp -rw-r--r-- root/root 524 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input21.cpp -rw-r--r-- root/root 731 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output21.cpp -rw-r--r-- root/root 169 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input13.cpp -rw-r--r-- root/root 447 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input08.cpp -rw-r--r-- root/root 416 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output18.cpp -rw-r--r-- root/root 644 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output08.cpp -rw-r--r-- root/root 521 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output05.cpp -rw-r--r-- root/root 269 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input18.cpp -rw-r--r-- root/root 458 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output03.cpp -rw-r--r-- root/root 169 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input20.cpp -rw-r--r-- root/root 388 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output22.cpp -rw-r--r-- root/root 102 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input24.cpp -rw-r--r-- root/root 216 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input12.cpp -rw-r--r-- root/root 175 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input09.cpp -rw-r--r-- root/root 233 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output13.cpp -rw-r--r-- root/root 258 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output20.cpp -rw-r--r-- root/root 266 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input10.cpp -rw-r--r-- root/root 289 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output12.cpp -rw-r--r-- root/root 781 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output02.cpp -rw-r--r-- root/root 234 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output23.cpp -rw-r--r-- root/root 210 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input11.cpp -rw-r--r-- root/root 127 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input07.cpp -rw-r--r-- root/root 161 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input23.cpp -rw-r--r-- root/root 403 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input05.cpp -rw-r--r-- root/root 107 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input16.cpp -rw-r--r-- root/root 289 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input22.cpp -rw-r--r-- root/root 160 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input15.cpp -rw-r--r-- root/root 107 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input28.cpp -rw-r--r-- root/root 178 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output07.cpp -rw-r--r-- root/root 620 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output14.cpp -rw-r--r-- root/root 434 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output17.cpp -rw-r--r-- root/root 1348 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/input01.cpp -rw-r--r-- root/root 395 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/run-tests -rw-r--r-- root/root 2116 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/test/output01.cpp -rw-r--r-- root/root 856 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/README -rw-r--r-- root/root 5829 2008-10-06 16:04 ./usr/share/doc/kelbt/cxxprep/scanner.rl -rw-r--r-- root/root 2182 2008-10-06 16:04 ./usr/share/doc/kelbt/cxxprep/keys.gperf -rw-r--r-- root/root 1179 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/DEFICIENCIES -rw-r--r-- root/root 133 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/TODO -rw-r--r-- root/root 5570 2008-10-06 16:04 ./usr/share/doc/kelbt/cxxprep/names.cpp -rw-r--r-- root/root 23758 2008-10-06 16:04 ./usr/share/doc/kelbt/cxxprep/cpp.grm -rw-r--r-- root/root 285 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/filtarg -rw-r--r-- root/root 1885 2012-06-10 21:31 ./usr/share/doc/kelbt/cxxprep/Makefile -rw-r--r-- root/root 6973 2008-10-06 16:04 ./usr/share/doc/kelbt/cxxprep/parser.kh -rw-r--r-- root/root 88 2007-03-03 11:45 ./usr/share/doc/kelbt/cxxprep/ChangeLog -rw-r--r-- root/root 1367 2008-10-06 16:04 ./usr/share/doc/kelbt/cxxprep/scanner.h -rw-r--r-- root/root 73773 2008-10-06 16:04 ./usr/share/doc/kelbt/cxxprep/parser.kl -rw-r--r-- root/root 656 2012-06-10 21:31 ./usr/share/doc/kelbt/copyright -rw-r--r-- root/root 385 2012-06-10 21:31 ./usr/share/doc/kelbt/README.Debian drwxr-xr-x root/root 0 2012-06-10 21:33 ./usr/share/man/ drwxr-xr-x root/root 0 2012-06-10 21:33 ./usr/share/man/man1/ -rw-r--r-- root/root 527 2012-06-10 21:33 ./usr/share/man/man1/kelbt.1.gz drwxr-xr-x root/root 0 2012-06-10 21:33 ./usr/bin/ -rwxr-xr-x root/root 133664 2012-06-10 21:33 ./usr/bin/kelbt ┌──────────────────────────────────────────────────────────────────────────────┐ │ Post Build │ └──────────────────────────────────────────────────────────────────────────────┘ ┌──────────────────────────────────────────────────────────────────────────────┐ │ Cleanup │ └──────────────────────────────────────────────────────────────────────────────┘ Purging /«BUILDDIR» Reading package lists... Building dependency tree... Reading state information... 0 upgraded, 0 newly installed, 0 to remove and 10 not upgraded. Reading package lists... Building dependency tree... Reading state information... The following packages will be REMOVED: bsdmainutils* debhelper* file* gettext* gettext-base* groff-base* html2text* intltool-debian* libasprintf0c2* libcroco3* libffi5* libgettextpo0* libglib2.0-0* libmagic1* libpcre3* libpipeline1* libunistring0* libxml2* man-db* po-debconf* sbuild-build-depends-core-dummy* sbuild-build-depends-kelbt-dummy* 0 upgraded, 0 newly installed, 22 to remove and 10 not upgraded. After this operation, 24.3 MB disk space will be freed. (Reading database ... 12043 files and directories currently installed.) Removing sbuild-build-depends-kelbt-dummy ... Removing debhelper ... Removing man-db ... Purging configuration files for man-db ... Removing bsdmainutils ... Purging configuration files for bsdmainutils ... Removing file ... Removing po-debconf ... Removing intltool-debian ... Removing gettext ... Removing gettext-base ... Removing groff-base ... Purging configuration files for groff-base ... Removing html2text ... Purging configuration files for html2text ... Removing libasprintf0c2:armhf ... Removing libcroco3:armhf ... Purging configuration files for libcroco3:armhf ... Removing libglib2.0-0:armhf ... Purging configuration files for libglib2.0-0:armhf ... Removing libffi5:armhf ... Purging configuration files for libffi5:armhf ... Removing libgettextpo0:armhf ... Removing libmagic1:armhf ... Purging configuration files for libmagic1:armhf ... Removing libpcre3:armhf ... Purging configuration files for libpcre3:armhf ... Removing libpipeline1:armhf ... Purging configuration files for libpipeline1:armhf ... Removing libunistring0:armhf ... Purging configuration files for libunistring0:armhf ... Removing libxml2:armhf ... Purging configuration files for libxml2:armhf ... Removing sbuild-build-depends-core-dummy ... ┌──────────────────────────────────────────────────────────────────────────────┐ │ Summary │ └──────────────────────────────────────────────────────────────────────────────┘ Architecture: armhf Build-Space: 7500 Build-Time: 140 Distribution: testing Install-Time: 68 Job: kelbt_0.15-1 Package: kelbt Package-Time: 227 Source-Version: 0.15-1 Space: 7500 Status: successful Version: 0.15-1 ──────────────────────────────────────────────────────────────────────────────── Finished at 20120610-2134 Build needed 00:03:47, 7500k disc space