aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/fbc/Manifest2
-rw-r--r--dev-lang/fbc/fbc-1.06.0.ebuild93
-rw-r--r--dev-lang/fbc/files/1.06.0/bootstrap/0001-makefile-Fix-bootstrap-recipe-race-condition.patch37
-rw-r--r--dev-lang/fbc/files/1.06.0/bootstrap/0002-makefile-Implement-bootstrap-minimal-target.patch56
-rw-r--r--dev-lang/fbc/files/1.06.0/bootstrap/0003-bootstrap-dist-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch1514
-rw-r--r--dev-lang/fbc/files/1.06.0/bootstrap/0004-bootstrap-dist-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch7124
-rw-r--r--dev-lang/fbc/files/1.06.0/fbc/0001-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch35
-rw-r--r--dev-lang/fbc/metadata.xml23
8 files changed, 8884 insertions, 0 deletions
diff --git a/dev-lang/fbc/Manifest b/dev-lang/fbc/Manifest
new file mode 100644
index 000000000..d27c9cd3b
--- /dev/null
+++ b/dev-lang/fbc/Manifest
@@ -0,0 +1,2 @@
+DIST FreeBASIC-1.06.0-source-bootstrap.tar.xz 7742292 BLAKE2B fd32c6e5edf6e8c27538465141c6b870d6c893f8e05fc8d91b273f9268a68065709cba95e8c5cd8b86786522b2ac1eaf1a6a547227432bbc9998eb1288b29515 SHA512 42878091994cae7e0a2f4ba1d2d83a80d32d62ad06790ac06643a266200b53b7ce2480a651b1622910a2733756b7ca032a5be1bb73ee3f796146394eebb9f43c
+DIST fbc-1.06.0.tar.gz 8847831 BLAKE2B 9245137995f9f3e2ff5adaf9b273593434ac9ec96919b2c970ec26183fe6fb7afee35753f2dd92f4b34d1aade92871e5a6722571a5ba04dde323fd7fb06c55c5 SHA512 687dcf665bb10e6a771cc01d02c21da77d89e052308600038dce526ba1ccfc6554d409dab184f3495557c9e4fdf744fd7a9088b4b137b782a9ab8633622c5484
diff --git a/dev-lang/fbc/fbc-1.06.0.ebuild b/dev-lang/fbc/fbc-1.06.0.ebuild
new file mode 100644
index 000000000..8783039a0
--- /dev/null
+++ b/dev-lang/fbc/fbc-1.06.0.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="FreeBASIC - A free/open source, multi-platform BASIC compiler."
+HOMEPAGE="https://www.freebasic.net"
+SRC_URI="https://github.com/freebasic/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/freebasic/${PN}/releases/download/${PV}/FreeBASIC-${PV}-source-bootstrap.tar.xz"
+
+LICENSE="FDL-1.2 GPL-2+ LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="gpm libffi opengl X"
+
+DEPEND="
+ sys-libs/ncurses:=
+ gpm? ( sys-libs/gpm )
+ libffi? ( virtual/libffi )
+ opengl? ( virtual/opengl )
+ X? (
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ )"
+RDEPEND="${DEPEND}"
+
+PATCHES="${FILESDIR}/${PV}/${PN}"
+
+DOCS="${S}/doc/fbc.1"
+
+BOOTSTRAP_S="${WORKDIR}/FreeBASIC-${PV}-source-bootstrap"
+
+src_unpack() {
+ # We only need bootstrap source code if fbc is not already present
+ if ! has_version dev-lang/fbc; then
+ unpack FreeBASIC-${PV}-source-bootstrap.tar.xz
+ fi
+ unpack ${P}.tar.gz
+}
+
+src_prepare() {
+ # We only need bootstrap source code if fbc is not already present
+ if ! has_version dev-lang/fbc; then
+ cd "${BOOTSTRAP_S}" || die "cd failed"
+ eapply "${FILESDIR}/${PV}/bootstrap"
+ cd "${S}" || die "cd failed"
+ fi
+ default
+}
+
+src_compile() {
+ local fbc="fbc"
+ local fbcflags=""
+
+ # We only need bootstrap compiler if fbc is not already present
+ if ! has_version dev-lang/fbc; then
+ cd "${BOOTSTRAP_S}" || die "cd failed"
+
+ # Build bootstrap compiler
+ emake bootstrap-minimal
+
+ # Set bootstrap compiler to build fbc
+ fbc="${BOOTSTRAP_S}/bin/fbc"
+ fbcflags="-i ${BOOTSTRAP_S}/inc"
+
+ cd "${S}" || die "cd failed"
+ fi
+
+ local xcflags=$(usex gpm "" "-DDISABLE_GPM")
+ xcflags+=$(usex libffi "" " -DDISABLE_FFI")
+ xcflags+=$(usex opengl "" " -DDISABLE_OPENGL")
+ xcflags+=$(usex X "" " -DDISABLE_X11")
+
+ # fbc automatically strips the executables it compiles; in order to avoid
+ # creating striped executables, we override the fbc hardcoded linker "-s"
+ # flag with our own; "--strip-debug" was chosen arbitrarily (without the
+ # "-g" flag the executable should not have debug_info symbols anyway, so the
+ # "--strip-debug" flag should be a safe option)
+ local fblflags="-Wl --strip-debug "
+ # fbc requires a space after the -Wl option
+ fblflags+=$(echo "${LDFLAGS}" | sed 's/-Wl,/-Wl /g')
+
+ # Build fbc
+ emake CFLAGS="${CFLAGS} ${xcflags}" FBC="${fbc}" FBCFLAGS="${fbcflags}" FBLFLAGS="${fblflags}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" prefix="/usr" install
+ einstalldocs
+}
diff --git a/dev-lang/fbc/files/1.06.0/bootstrap/0001-makefile-Fix-bootstrap-recipe-race-condition.patch b/dev-lang/fbc/files/1.06.0/bootstrap/0001-makefile-Fix-bootstrap-recipe-race-condition.patch
new file mode 100644
index 000000000..10939dd90
--- /dev/null
+++ b/dev-lang/fbc/files/1.06.0/bootstrap/0001-makefile-Fix-bootstrap-recipe-race-condition.patch
@@ -0,0 +1,37 @@
+From 94764a6bf44ab9146e23fb0559ef99f35ceeec79 Mon Sep 17 00:00:00 2001
+From: William Breathitt Gray <vilhelm.gray@gmail.com>
+Date: Sat, 6 Apr 2019 11:20:10 +0900
+Subject: [PATCH] makefile: Fix bootstrap recipe race condition
+
+Since fbrt0.o and libfb.a are statically linked to the bootstrap fbc,
+rtlib should be listed as a dependency of BOOTSTRAP_FBC. This patch
+fixes the race condition described in issue #131.
+---
+ makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/makefile b/makefile
+index aeca4c07e..0422dfff7 100644
+--- a/makefile
++++ b/makefile
+@@ -1063,7 +1063,7 @@ bootstrap-dist:
+ #
+ BOOTSTRAP_FBC := bootstrap/fbc$(EXEEXT)
+ .PHONY: bootstrap
+-bootstrap: rtlib gfxlib2 $(BOOTSTRAP_FBC)
++bootstrap: gfxlib2 $(BOOTSTRAP_FBC)
+ mkdir -p bin
+ cp $(BOOTSTRAP_FBC) $(FBC_EXE)
+
+@@ -1089,7 +1089,7 @@ endif
+ ifneq ($(filter darwin freebsd linux netbsd openbsd solaris,$(TARGET_OS)),)
+ BOOTSTRAP_LIBS := -lncurses -lm -pthread
+ endif
+-$(BOOTSTRAP_FBC): $(BOOTSTRAP_OBJ)
++$(BOOTSTRAP_FBC): rtlib $(BOOTSTRAP_OBJ)
+ $(QUIET_LINK)$(CC) -o $@ $(libdir)/fbrt0.o bootstrap/$(FBTARGET)/*.o $(libdir)/libfb.a $(BOOTSTRAP_LIBS)
+
+ .PHONY: clean-bootstrap
+--
+2.21.0
+
diff --git a/dev-lang/fbc/files/1.06.0/bootstrap/0002-makefile-Implement-bootstrap-minimal-target.patch b/dev-lang/fbc/files/1.06.0/bootstrap/0002-makefile-Implement-bootstrap-minimal-target.patch
new file mode 100644
index 000000000..17dfb7518
--- /dev/null
+++ b/dev-lang/fbc/files/1.06.0/bootstrap/0002-makefile-Implement-bootstrap-minimal-target.patch
@@ -0,0 +1,56 @@
+From dc6e5a3b68810d0e97625b57055bd98678e13a53 Mon Sep 17 00:00:00 2001
+From: William Breathitt Gray <vilhelm.gray@gmail.com>
+Date: Tue, 9 Apr 2019 18:51:38 +0900
+Subject: [PATCH] makefile: Implement bootstrap-minimal target
+
+The bootstrap-minimal target builds a bootstrap fbc with only the
+minimal features necessary to build another fbc.
+---
+ makefile | 16 ++++++++++++----
+ 1 file changed, 12 insertions(+), 4 deletions(-)
+
+diff --git a/makefile b/makefile
+index 0422dfff7..245e95669 100644
+--- a/makefile
++++ b/makefile
+@@ -64,8 +64,9 @@
+ # warning-tests
+ # clean-tests
+ #
+-# bootstrap-dist Create source package with precompiled fbc sources
+-# bootstrap Build fbc from the precompiled sources (only if precompiled sources exist)
++# bootstrap-dist Create source package with precompiled fbc sources
++# bootstrap Build fbc from the precompiled sources (only if precompiled sources exist)
++# bootstrap-minimal Build fbc from the precompiled sources (only if precompiled sources exist) with only the minimal features needed to compile another fbc
+ #
+ # makefile configuration:
+ # FB[C|L]FLAGS to set -g -exx etc. for the compiler build and/or link
+@@ -368,6 +369,11 @@ ALLFBCFLAGS += -e -m fbc -w pedantic
+ ALLFBLFLAGS += -e -m fbc -w pedantic
+ ALLCFLAGS += -Wall -Wextra -Wno-unused-parameter -Werror-implicit-function-declaration
+
++ifneq ($(filter bootstrap-minimal, $(MAKECMDGOALS)),)
++ # Disable features not needed to compile a minimal bootstrap fbc
++ ALLCFLAGS += -DDISABLE_GPM -DDISABLE_FFI -DDISABLE_X11
++endif
++
+ ifeq ($(TARGET_OS),xbox)
+ ifeq ($(OPENXDK),)
+ $(error Please set OPENXDK=<OpenXDK directory>)
+@@ -1061,9 +1067,11 @@ bootstrap-dist:
+ # Build the fbc[.exe] binary from the precompiled sources in the bootstrap/
+ # directory.
+ #
++.PHONY: bootstrap bootstrap-minimal
++bootstrap: gfxlib2 bootstrap-minimal
++
+ BOOTSTRAP_FBC := bootstrap/fbc$(EXEEXT)
+-.PHONY: bootstrap
+-bootstrap: gfxlib2 $(BOOTSTRAP_FBC)
++bootstrap-minimal: $(BOOTSTRAP_FBC)
+ mkdir -p bin
+ cp $(BOOTSTRAP_FBC) $(FBC_EXE)
+
+--
+2.21.0
+
diff --git a/dev-lang/fbc/files/1.06.0/bootstrap/0003-bootstrap-dist-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch b/dev-lang/fbc/files/1.06.0/bootstrap/0003-bootstrap-dist-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch
new file mode 100644
index 000000000..bebb77078
--- /dev/null
+++ b/dev-lang/fbc/files/1.06.0/bootstrap/0003-bootstrap-dist-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch
@@ -0,0 +1,1514 @@
+diff --git a/../FreeBASIC-1.06.0-source-bootstrap/bootstrap/linux-x86_64/fbc.c b/bootstrap/linux-x86_64/fbc.c
+index 650fc5b..12aee5a 100644
+--- a/../FreeBASIC-1.06.0-source-bootstrap/bootstrap/linux-x86_64/fbc.c
++++ b/bootstrap/linux-x86_64/fbc.c
+@@ -310,7 +310,7 @@ static int64 OPTION_TAKES_ARGUMENT$[58] = { -1ll, -1ll, -1ll, -1ll, 0ll, 0ll, -1
+
+ int32 main( int32 __FB_ARGC__$0, char** __FB_ARGV__$0 )
+ {
+- FBSTRING TMP$647$0;
++ FBSTRING TMP$650$0;
+ int32 fb$result$0;
+ __builtin_memset( &fb$result$0, 0, 4ll );
+ fb_Init( __FB_ARGC__$0, (uint8**)__FB_ARGV__$0, 0 );
+@@ -353,10 +353,10 @@ int32 main( int32 __FB_ARGC__$0, char** __FB_ARGV__$0 )
+ }
+ label$1110:;
+ label$1109:;
+- __builtin_memset( &TMP$647$0, 0, 24ll );
+- FBSTRING* vr$6 = fb_StrAssign( (void*)&TMP$647$0, -1ll, (void*)((uint8*)&FBC$ + 3098ll), 261ll, 0 );
+- FBADDINCLUDEPATH( &TMP$647$0 );
+- fb_StrDelete( &TMP$647$0 );
++ __builtin_memset( &TMP$650$0, 0, 24ll );
++ FBSTRING* vr$6 = fb_StrAssign( (void*)&TMP$650$0, -1ll, (void*)((uint8*)&FBC$ + 3098ll), 261ll, 0 );
++ FBADDINCLUDEPATH( &TMP$650$0 );
++ fb_StrDelete( &TMP$650$0 );
+ int64 HAVE_INPUT_FILES$0;
+ void* vr$10 = LISTGETHEAD( (struct $5TLIST*)((uint8*)&FBC$ + 144ll) );
+ void* vr$13 = LISTGETHEAD( (struct $5TLIST*)((uint8*)&FBC$ + 376ll) );
+@@ -366,9 +366,9 @@ int32 main( int32 __FB_ARGC__$0, char** __FB_ARGV__$0 )
+ if( *(int64*)((uint8*)&FBC$ + 136ll) < 0ll ) goto label$1112;
+ {
+ {
+- int64 TMP$648$2;
+- TMP$648$2 = *(int64*)((uint8*)&FBC$ + 136ll);
+- if( TMP$648$2 != 0ll ) goto label$1114;
++ int64 TMP$651$2;
++ TMP$651$2 = *(int64*)((uint8*)&FBC$ + 136ll);
++ if( TMP$651$2 != 0ll ) goto label$1114;
+ label$1115:;
+ {
+ FBSTRING* vr$24 = FBGETHOSTID( );
+@@ -376,7 +376,7 @@ int32 main( int32 __FB_ARGC__$0, char** __FB_ARGV__$0 )
+ }
+ goto label$1113;
+ label$1114:;
+- if( TMP$648$2 != 1ll ) goto label$1116;
++ if( TMP$651$2 != 1ll ) goto label$1116;
+ label$1117:;
+ {
+ FBSTRING* vr$25 = FBGETTARGETID( );
+@@ -384,7 +384,7 @@ int32 main( int32 __FB_ARGC__$0, char** __FB_ARGV__$0 )
+ }
+ goto label$1113;
+ label$1116:;
+- if( TMP$648$2 != 2ll ) goto label$1118;
++ if( TMP$651$2 != 2ll ) goto label$1118;
+ label$1119:;
+ {
+ if( HAVE_INPUT_FILES$0 == 0ll ) goto label$1121;
+@@ -399,7 +399,7 @@ int32 main( int32 __FB_ARGC__$0, char** __FB_ARGV__$0 )
+ }
+ goto label$1113;
+ label$1118:;
+- if( TMP$648$2 != 3ll ) goto label$1122;
++ if( TMP$651$2 != 3ll ) goto label$1122;
+ label$1123:;
+ {
+ FBSTRING* vr$29 = fb_StrAllocTempDescZ( (uint8*)((uint8*)&FBC$ + 3359ll) );
+@@ -1609,7 +1609,7 @@ static int64 HLINKFILES( void )
+ }
+ goto label$189;
+ label$190:;
+- static const void* tmp$649[7ll] = {
++ static const void* tmp$652[7ll] = {
+ &&label$192,
+ &&label$189,
+ &&label$189,
+@@ -1619,7 +1619,7 @@ static int64 HLINKFILES( void )
+ &&label$202,
+ };
+ if( (TMP$126$5 - 2ull) > 6ull ) goto label$189;
+- goto *tmp$649[TMP$126$5 - 2ull];
++ goto *tmp$652[TMP$126$5 - 2ull];
+ label$189:;
+ }
+ }
+@@ -1640,7 +1640,7 @@ static int64 HLINKFILES( void )
+ }
+ goto label$173;
+ label$174:;
+- static const void* tmp$650[9ll] = {
++ static const void* tmp$653[9ll] = {
+ &&label$175,
+ &&label$175,
+ &&label$184,
+@@ -1652,7 +1652,7 @@ static int64 HLINKFILES( void )
+ &&label$184,
+ };
+ if( TMP$113$2 > 8ull ) goto label$173;
+- goto *tmp$650[TMP$113$2 - 0ull];
++ goto *tmp$653[TMP$113$2 - 0ull];
+ label$173:;
+ }
+ int64 vr$115 = FBGETOPTION( 3ll );
+@@ -1718,7 +1718,7 @@ static int64 HLINKFILES( void )
+ }
+ goto label$211;
+ label$212:;
+- static const void* tmp$651[5ll] = {
++ static const void* tmp$654[5ll] = {
+ &&label$213,
+ &&label$213,
+ &&label$211,
+@@ -1726,7 +1726,7 @@ static int64 HLINKFILES( void )
+ &&label$216,
+ };
+ if( TMP$142$2 > 4ull ) goto label$211;
+- goto *tmp$651[TMP$142$2 - 0ull];
++ goto *tmp$654[TMP$142$2 - 0ull];
+ label$211:;
+ }
+ if( *(int64*)((uint8*)&FBC$ + 2568ll) == 0ll ) goto label$218;
+@@ -1885,13 +1885,13 @@ static int64 HLINKFILES( void )
+ }
+ goto label$249;
+ label$250:;
+- static const void* tmp$652[3ll] = {
++ static const void* tmp$655[3ll] = {
+ &&label$251,
+ &&label$252,
+ &&label$251,
+ };
+ if( (TMP$163$6 - 6ull) > 2ull ) goto label$252;
+- goto *tmp$652[TMP$163$6 - 6ull];
++ goto *tmp$655[TMP$163$6 - 6ull];
+ label$249:;
+ }
+ }
+@@ -1916,13 +1916,13 @@ static int64 HLINKFILES( void )
+ }
+ goto label$253;
+ label$254:;
+- static const void* tmp$653[3ll] = {
++ static const void* tmp$656[3ll] = {
+ &&label$255,
+ &&label$256,
+ &&label$255,
+ };
+ if( (TMP$165$6 - 6ull) > 2ull ) goto label$256;
+- goto *tmp$653[TMP$165$6 - 6ull];
++ goto *tmp$656[TMP$165$6 - 6ull];
+ label$253:;
+ }
+ }
+@@ -1966,7 +1966,7 @@ static int64 HLINKFILES( void )
+ }
+ goto label$229;
+ label$230:;
+- static const void* tmp$654[9ll] = {
++ static const void* tmp$657[9ll] = {
+ &&label$236,
+ &&label$231,
+ &&label$244,
+@@ -1978,7 +1978,7 @@ static int64 HLINKFILES( void )
+ &&label$244,
+ };
+ if( TMP$156$2 > 8ull ) goto label$229;
+- goto *tmp$654[TMP$156$2 - 0ull];
++ goto *tmp$657[TMP$156$2 - 0ull];
+ label$229:;
+ }
+ if( *(int64*)((uint8*)&FBC$ + 2560ll) != 0ll ) goto label$265;
+@@ -2134,7 +2134,7 @@ static int64 HLINKFILES( void )
+ }
+ goto label$281;
+ label$282:;
+- static const void* tmp$655[9ll] = {
++ static const void* tmp$658[9ll] = {
+ &&label$288,
+ &&label$281,
+ &&label$283,
+@@ -2146,7 +2146,7 @@ static int64 HLINKFILES( void )
+ &&label$283,
+ };
+ if( TMP$183$2 > 8ull ) goto label$281;
+- goto *tmp$655[TMP$183$2 - 0ull];
++ goto *tmp$658[TMP$183$2 - 0ull];
+ label$281:;
+ }
+ int64 vr$352 = FBGETOPTION( 3ll );
+@@ -2325,7 +2325,7 @@ static int64 HLINKFILES( void )
+ }
+ goto label$293;
+ label$294:;
+- static const void* tmp$656[5ll] = {
++ static const void* tmp$659[5ll] = {
+ &&label$300,
+ &&label$300,
+ &&label$293,
+@@ -2333,7 +2333,7 @@ static int64 HLINKFILES( void )
+ &&label$305,
+ };
+ if( TMP$189$2 > 4ull ) goto label$293;
+- goto *tmp$656[TMP$189$2 - 0ull];
++ goto *tmp$659[TMP$189$2 - 0ull];
+ label$293:;
+ }
+ fb$result$1 = -1ll;
+@@ -2412,7 +2412,7 @@ static void HREADOBJINFO( void )
+ }
+ goto label$323;
+ label$324:;
+- static const void* tmp$657[5ll] = {
++ static const void* tmp$660[5ll] = {
+ &&label$325,
+ &&label$326,
+ &&label$327,
+@@ -2420,7 +2420,7 @@ static void HREADOBJINFO( void )
+ &&label$331,
+ };
+ if( TMP$212$3 > 4ull ) goto label$336;
+- goto *tmp$657[TMP$212$3 - 0ull];
++ goto *tmp$660[TMP$212$3 - 0ull];
+ label$323:;
+ }
+ }
+@@ -3416,36 +3416,45 @@ static void HANDLEOPT( int64 OPTID$1, FBSTRING* ARG$1 )
+ {
+ FBSTRING TMP$294$3;
+ FBSTRING TMP$295$3;
++ FBSTRING TMP$296$3;
+ FBSTRING* vr$199 = HREPLACE( *(uint8**)ARG$1, (uint8*)",", (uint8*)" " );
+ __builtin_memset( &TMP$294$3, 0, 24ll );
+ FBSTRING* vr$202 = fb_StrConcat( &TMP$294$3, (void*)" ", 2ll, (void*)vr$199, -1ll );
+ __builtin_memset( &TMP$295$3, 0, 24ll );
+ FBSTRING* vr$205 = fb_StrConcat( &TMP$295$3, (void*)vr$202, -1ll, (void*)" ", 2ll );
+- fb_StrAssign( (void*)((uint8*)&FBC$ + 1782ll), 128ll, (void*)vr$205, -1ll, 0 );
++ __builtin_memset( &TMP$296$3, 0, 24ll );
++ FBSTRING* vr$209 = fb_StrConcat( &TMP$296$3, (void*)((uint8*)&FBC$ + 1782ll), 128ll, (void*)vr$205, -1ll );
++ fb_StrAssign( (void*)((uint8*)&FBC$ + 1782ll), 128ll, (void*)vr$209, -1ll, 0 );
+ }
+ goto label$391;
+ label$540:;
+ {
+- FBSTRING TMP$296$3;
+ FBSTRING TMP$297$3;
+- FBSTRING* vr$208 = HREPLACE( *(uint8**)ARG$1, (uint8*)",", (uint8*)" " );
+- __builtin_memset( &TMP$296$3, 0, 24ll );
+- FBSTRING* vr$211 = fb_StrConcat( &TMP$296$3, (void*)" ", 2ll, (void*)vr$208, -1ll );
++ FBSTRING TMP$298$3;
++ FBSTRING TMP$299$3;
++ FBSTRING* vr$212 = HREPLACE( *(uint8**)ARG$1, (uint8*)",", (uint8*)" " );
+ __builtin_memset( &TMP$297$3, 0, 24ll );
+- FBSTRING* vr$214 = fb_StrConcat( &TMP$297$3, (void*)vr$211, -1ll, (void*)" ", 2ll );
+- fb_StrAssign( (void*)((uint8*)&FBC$ + 2038ll), 128ll, (void*)vr$214, -1ll, 0 );
++ FBSTRING* vr$215 = fb_StrConcat( &TMP$297$3, (void*)" ", 2ll, (void*)vr$212, -1ll );
++ __builtin_memset( &TMP$298$3, 0, 24ll );
++ FBSTRING* vr$218 = fb_StrConcat( &TMP$298$3, (void*)vr$215, -1ll, (void*)" ", 2ll );
++ __builtin_memset( &TMP$299$3, 0, 24ll );
++ FBSTRING* vr$222 = fb_StrConcat( &TMP$299$3, (void*)((uint8*)&FBC$ + 2038ll), 128ll, (void*)vr$218, -1ll );
++ fb_StrAssign( (void*)((uint8*)&FBC$ + 2038ll), 128ll, (void*)vr$222, -1ll, 0 );
+ }
+ goto label$391;
+ label$541:;
+ {
+- FBSTRING TMP$298$3;
+- FBSTRING TMP$299$3;
+- FBSTRING* vr$217 = HREPLACE( *(uint8**)ARG$1, (uint8*)",", (uint8*)" " );
+- __builtin_memset( &TMP$298$3, 0, 24ll );
+- FBSTRING* vr$220 = fb_StrConcat( &TMP$298$3, (void*)" ", 2ll, (void*)vr$217, -1ll );
+- __builtin_memset( &TMP$299$3, 0, 24ll );
+- FBSTRING* vr$223 = fb_StrConcat( &TMP$299$3, (void*)vr$220, -1ll, (void*)" ", 2ll );
+- fb_StrAssign( (void*)((uint8*)&FBC$ + 1910ll), 128ll, (void*)vr$223, -1ll, 0 );
++ FBSTRING TMP$300$3;
++ FBSTRING TMP$301$3;
++ FBSTRING TMP$302$3;
++ FBSTRING* vr$225 = HREPLACE( *(uint8**)ARG$1, (uint8*)",", (uint8*)" " );
++ __builtin_memset( &TMP$300$3, 0, 24ll );
++ FBSTRING* vr$228 = fb_StrConcat( &TMP$300$3, (void*)" ", 2ll, (void*)vr$225, -1ll );
++ __builtin_memset( &TMP$301$3, 0, 24ll );
++ FBSTRING* vr$231 = fb_StrConcat( &TMP$301$3, (void*)vr$228, -1ll, (void*)" ", 2ll );
++ __builtin_memset( &TMP$302$3, 0, 24ll );
++ FBSTRING* vr$235 = fb_StrConcat( &TMP$302$3, (void*)((uint8*)&FBC$ + 1910ll), 128ll, (void*)vr$231, -1ll );
++ fb_StrAssign( (void*)((uint8*)&FBC$ + 1910ll), 128ll, (void*)vr$235, -1ll, 0 );
+ }
+ goto label$391;
+ label$542:;
+@@ -3456,11 +3465,11 @@ static void HANDLEOPT( int64 OPTID$1, FBSTRING* ARG$1 )
+ label$543:;
+ {
+ {
+- FBSTRING TMP$300$4;
+- FBSTRING* vr$226 = fb_StrLcase2( ARG$1, 0 );
+- FBSTRING* vr$228 = fb_StrInit( (void*)&TMP$300$4, -1ll, (void*)vr$226, -1ll, 0 );
+- int32 vr$230 = fb_StrCompare( (void*)&TMP$300$4, -1ll, (void*)"gosub-setjmp", 13ll );
+- if( (int64)vr$230 != 0ll ) goto label$545;
++ FBSTRING TMP$303$4;
++ FBSTRING* vr$238 = fb_StrLcase2( ARG$1, 0 );
++ FBSTRING* vr$240 = fb_StrInit( (void*)&TMP$303$4, -1ll, (void*)vr$238, -1ll, 0 );
++ int32 vr$242 = fb_StrCompare( (void*)&TMP$303$4, -1ll, (void*)"gosub-setjmp", 13ll );
++ if( (int64)vr$242 != 0ll ) goto label$545;
+ label$546:;
+ {
+ FBSETOPTION( 22ll, -1ll );
+@@ -3472,12 +3481,12 @@ static void HANDLEOPT( int64 OPTID$1, FBSTRING* ARG$1 )
+ }
+ label$547:;
+ label$544:;
+- fb_StrDelete( &TMP$300$4 );
++ fb_StrDelete( &TMP$303$4 );
+ }
+ }
+ goto label$391;
+ label$392:;
+- static const void* tmp$658[58ll] = {
++ static const void* tmp$661[58ll] = {
+ &&label$393,
+ &&label$394,
+ &&label$397,
+@@ -3538,7 +3547,7 @@ static void HANDLEOPT( int64 OPTID$1, FBSTRING* ARG$1 )
+ &&label$543,
+ };
+ if( TMP$252$2 > 57ull ) goto label$391;
+- goto *tmp$658[TMP$252$2 - 0ull];
++ goto *tmp$661[TMP$252$2 - 0ull];
+ label$391:;
+ }
+ label$390:;
+@@ -3550,8 +3559,8 @@ static int64 PARSEOPTION( uint8* OPT$1 )
+ __builtin_memset( &fb$result$1, 0, 8ll );
+ label$548:;
+ {
+- uint64 TMP$302$2;
+- TMP$302$2 = (uint64)*(uint8*)OPT$1;
++ uint64 TMP$305$2;
++ TMP$305$2 = (uint64)*(uint8*)OPT$1;
+ goto label$551;
+ label$552:;
+ {
+@@ -4117,7 +4126,7 @@ static int64 PARSEOPTION( uint8* OPT$1 )
+ }
+ goto label$550;
+ label$551:;
+- static const void* tmp$659[78ll] = {
++ static const void* tmp$662[78ll] = {
+ &&label$693,
+ &&label$550,
+ &&label$550,
+@@ -4197,8 +4206,8 @@ static int64 PARSEOPTION( uint8* OPT$1 )
+ &&label$550,
+ &&label$690,
+ };
+- if( (TMP$302$2 - 45ull) > 77ull ) goto label$550;
+- goto *tmp$659[TMP$302$2 - 45ull];
++ if( (TMP$305$2 - 45ull) > 77ull ) goto label$550;
++ goto *tmp$662[TMP$305$2 - 45ull];
+ label$550:;
+ }
+ fb$result$1 = -1ll;
+@@ -4233,9 +4242,9 @@ static void HANDLEARG( FBSTRING* ARG$1 )
+ label$705:;
+ label$704:;
+ {
+- uint8 TMP$364$2;
+- TMP$364$2 = *(uint8*)*(uint8**)ARG$1;
+- if( (uint64)(int64)TMP$364$2 != 45ull ) goto label$707;
++ uint8 TMP$367$2;
++ TMP$367$2 = *(uint8*)*(uint8**)ARG$1;
++ if( (uint64)(int64)TMP$367$2 != 45ull ) goto label$707;
+ label$708:;
+ {
+ uint8* OPT$3;
+@@ -4268,7 +4277,7 @@ static void HANDLEARG( FBSTRING* ARG$1 )
+ }
+ goto label$706;
+ label$707:;
+- if( (uint64)(int64)TMP$364$2 != 64ull ) goto label$715;
++ if( (uint64)(int64)TMP$367$2 != 64ull ) goto label$715;
+ label$716:;
+ {
+ static int64 RECLEVEL$3 = 0ll;
+@@ -4411,8 +4420,8 @@ static void PARSEARGSFROMFILE( FBSTRING* FILENAME$1 )
+ int64 CH$4;
+ CH$4 = (int64)*(uint8*)((uint8*)*(uint8**)&ARGS$1 + I$3);
+ {
+- uint64 TMP$370$5;
+- TMP$370$5 = (uint64)CH$4;
++ uint64 TMP$373$5;
++ TMP$373$5 = (uint64)CH$4;
+ goto label$751;
+ label$752:;
+ {
+@@ -4441,7 +4450,7 @@ static void PARSEARGSFROMFILE( FBSTRING* FILENAME$1 )
+ }
+ goto label$750;
+ label$751:;
+- static const void* tmp$660[8ll] = {
++ static const void* tmp$663[8ll] = {
+ &&label$752,
+ &&label$750,
+ &&label$755,
+@@ -4451,8 +4460,8 @@ static void PARSEARGSFROMFILE( FBSTRING* FILENAME$1 )
+ &&label$750,
+ &&label$755,
+ };
+- if( (TMP$370$5 - 32ull) > 7ull ) goto label$750;
+- goto *tmp$660[TMP$370$5 - 32ull];
++ if( (TMP$373$5 - 32ull) > 7ull ) goto label$750;
++ goto *tmp$663[TMP$373$5 - 32ull];
+ label$750:;
+ }
+ I$3 = I$3 + 1ll;
+@@ -4504,9 +4513,9 @@ static int64 HTARGETNEEDSPIC( void )
+ if( vr$1 == 0ll ) goto label$765;
+ {
+ {
+- uint64 TMP$372$3;
++ uint64 TMP$375$3;
+ int64 vr$2 = FBGETOPTION( 3ll );
+- TMP$372$3 = (uint64)vr$2;
++ TMP$375$3 = (uint64)vr$2;
+ goto label$767;
+ label$768:;
+ {
+@@ -4514,7 +4523,7 @@ static int64 HTARGETNEEDSPIC( void )
+ }
+ goto label$766;
+ label$767:;
+- static const void* tmp$661[7ll] = {
++ static const void* tmp$664[7ll] = {
+ &&label$768,
+ &&label$766,
+ &&label$766,
+@@ -4523,8 +4532,8 @@ static int64 HTARGETNEEDSPIC( void )
+ &&label$766,
+ &&label$768,
+ };
+- if( (TMP$372$3 - 2ull) > 6ull ) goto label$766;
+- goto *tmp$661[TMP$372$3 - 2ull];
++ if( (TMP$375$3 - 2ull) > 6ull ) goto label$766;
++ goto *tmp$664[TMP$375$3 - 2ull];
+ label$766:;
+ }
+ }
+@@ -4543,8 +4552,8 @@ static void HPARSEARGS( int64 ARGC$1, uint8** ARGV$1 )
+ {
+ int64 I$2;
+ I$2 = 1ll;
+- int64 TMP$373$2;
+- TMP$373$2 = ARGC$1 + -1ll;
++ int64 TMP$376$2;
++ TMP$376$2 = ARGC$1 + -1ll;
+ goto label$771;
+ label$774:;
+ {
+@@ -4554,16 +4563,16 @@ static void HPARSEARGS( int64 ARGC$1, uint8** ARGV$1 )
+ label$772:;
+ I$2 = I$2 + 1ll;
+ label$771:;
+- if( I$2 <= TMP$373$2 ) goto label$774;
++ if( I$2 <= TMP$376$2 ) goto label$774;
+ label$773:;
+ }
+ if( *(int64*)&FBC$ < 0ll ) goto label$776;
+ {
+- FBSTRING TMP$374$2;
+- __builtin_memset( &TMP$374$2, 0, 24ll );
+- FBSTRING* vr$11 = fb_StrAssign( (void*)&TMP$374$2, -1ll, *(void**)((uint8*)((uint8*)ARGV$1 + (ARGC$1 << (3ll & 63ll))) + -8ll), 0ll, 0 );
+- HFATALINVALIDOPTION( &TMP$374$2 );
+- fb_StrDelete( &TMP$374$2 );
++ FBSTRING TMP$377$2;
++ __builtin_memset( &TMP$377$2, 0, 24ll );
++ FBSTRING* vr$11 = fb_StrAssign( (void*)&TMP$377$2, -1ll, *(void**)((uint8*)((uint8*)ARGV$1 + (ARGC$1 << (3ll & 63ll))) + -8ll), 0ll, 0 );
++ HFATALINVALIDOPTION( &TMP$377$2 );
++ fb_StrDelete( &TMP$377$2 );
+ }
+ label$776:;
+ label$775:;
+@@ -4627,9 +4636,9 @@ static void HPARSEARGS( int64 ARGC$1, uint8** ARGV$1 )
+ label$790:;
+ label$789:;
+ {
+- uint64 TMP$375$2;
++ uint64 TMP$378$2;
+ int64 vr$33 = FBGETOPTION( 3ll );
+- TMP$375$2 = (uint64)vr$33;
++ TMP$378$2 = (uint64)vr$33;
+ goto label$792;
+ label$793:;
+ {
+@@ -4650,21 +4659,21 @@ static void HPARSEARGS( int64 ARGC$1, uint8** ARGV$1 )
+ }
+ goto label$791;
+ label$792:;
+- static const void* tmp$662[5ll] = {
++ static const void* tmp$665[5ll] = {
+ &&label$793,
+ &&label$793,
+ &&label$794,
+ &&label$794,
+ &&label$793,
+ };
+- if( TMP$375$2 > 4ull ) goto label$794;
+- goto *tmp$662[TMP$375$2 - 0ull];
++ if( TMP$378$2 > 4ull ) goto label$794;
++ goto *tmp$665[TMP$378$2 - 0ull];
+ label$791:;
+ }
+ {
+- uint64 TMP$376$2;
++ uint64 TMP$379$2;
+ int64 vr$37 = FBGETOPTION( 3ll );
+- TMP$376$2 = (uint64)vr$37;
++ TMP$379$2 = (uint64)vr$37;
+ goto label$798;
+ label$799:;
+ {
+@@ -4683,7 +4692,7 @@ static void HPARSEARGS( int64 ARGC$1, uint8** ARGV$1 )
+ }
+ goto label$797;
+ label$798:;
+- static const void* tmp$663[7ll] = {
++ static const void* tmp$666[7ll] = {
+ &&label$799,
+ &&label$800,
+ &&label$800,
+@@ -4692,31 +4701,31 @@ static void HPARSEARGS( int64 ARGC$1, uint8** ARGV$1 )
+ &&label$799,
+ &&label$799,
+ };
+- if( (TMP$376$2 - 2ull) > 6ull ) goto label$800;
+- goto *tmp$663[TMP$376$2 - 2ull];
++ if( (TMP$379$2 - 2ull) > 6ull ) goto label$800;
++ goto *tmp$666[TMP$379$2 - 2ull];
+ label$797:;
+ }
+ if( *(int64*)((uint8*)&FBC$ + 64ll) < 0ll ) goto label$804;
+ {
+ {
+- int64 TMP$377$3;
++ int64 TMP$380$3;
+ int64 vr$40 = FBGETCPUFAMILY( );
+- TMP$377$3 = vr$40;
+- if( TMP$377$3 == 0ll ) goto label$807;
++ TMP$380$3 = vr$40;
++ if( TMP$380$3 == 0ll ) goto label$807;
+ label$808:;
+- if( TMP$377$3 != 1ll ) goto label$806;
++ if( TMP$380$3 != 1ll ) goto label$806;
+ label$807:;
+ {
+ }
+ goto label$805;
+ label$806:;
+ {
+- FBSTRING TMP$378$4;
+- __builtin_memset( &TMP$378$4, 0, 24ll );
++ FBSTRING TMP$381$4;
++ __builtin_memset( &TMP$381$4, 0, 24ll );
+ FBSTRING* vr$42 = FBGETTARGETID( );
+- FBSTRING* vr$44 = fb_StrAssign( (void*)&TMP$378$4, -1ll, (void*)vr$42, -1ll, 0 );
+- ERRREPORTEX( 319ll, *(uint8**)&TMP$378$4, -1ll, 1ll, (uint8*)0ull );
+- fb_StrDelete( &TMP$378$4 );
++ FBSTRING* vr$44 = fb_StrAssign( (void*)&TMP$381$4, -1ll, (void*)vr$42, -1ll, 0 );
++ ERRREPORTEX( 319ll, *(uint8**)&TMP$381$4, -1ll, 1ll, (uint8*)0ull );
++ fb_StrDelete( &TMP$381$4 );
+ }
+ label$809:;
+ label$805:;
+@@ -4775,27 +4784,27 @@ static void FBCDETERMINEPREFIX( void )
+ int64 vr$1 = fb_StrLen( (void*)((uint8*)&FBC$ + 2576ll), 261ll );
+ if( vr$1 != 0ll ) goto label$824;
+ {
+- FBSTRING TMP$379$2;
+- FBSTRING TMP$380$2;
++ FBSTRING TMP$382$2;
+ FBSTRING TMP$383$2;
+- __builtin_memset( &TMP$379$2, 0, 24ll );
++ FBSTRING TMP$386$2;
++ __builtin_memset( &TMP$382$2, 0, 24ll );
+ FBSTRING* vr$3 = fb_ExePath( );
+- FBSTRING* vr$5 = fb_StrAssign( (void*)&TMP$379$2, -1ll, (void*)vr$3, -1ll, 0 );
+- FBSTRING* vr$7 = PATHSTRIPDIV( &TMP$379$2 );
+- __builtin_memset( &TMP$380$2, 0, 24ll );
+- FBSTRING* vr$10 = fb_StrConcat( &TMP$380$2, (void*)vr$7, -1ll, (void*)"/", 2ll );
+- fb_StrAssign( (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)vr$10, -1ll, 0 );
+- fb_StrDelete( &TMP$379$2 );
++ FBSTRING* vr$5 = fb_StrAssign( (void*)&TMP$382$2, -1ll, (void*)vr$3, -1ll, 0 );
++ FBSTRING* vr$7 = PATHSTRIPDIV( &TMP$382$2 );
+ __builtin_memset( &TMP$383$2, 0, 24ll );
+- FBSTRING* vr$16 = fb_StrConcat( &TMP$383$2, (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)"../", 4ll );
++ FBSTRING* vr$10 = fb_StrConcat( &TMP$383$2, (void*)vr$7, -1ll, (void*)"/", 2ll );
++ fb_StrAssign( (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)vr$10, -1ll, 0 );
++ fb_StrDelete( &TMP$382$2 );
++ __builtin_memset( &TMP$386$2, 0, 24ll );
++ FBSTRING* vr$16 = fb_StrConcat( &TMP$386$2, (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)"../", 4ll );
+ fb_StrAssign( (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)vr$16, -1ll, 0 );
+ }
+ goto label$823;
+ label$824:;
+ {
+- FBSTRING TMP$384$2;
+- __builtin_memset( &TMP$384$2, 0, 24ll );
+- FBSTRING* vr$21 = fb_StrConcat( &TMP$384$2, (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)"/", 2ll );
++ FBSTRING TMP$387$2;
++ __builtin_memset( &TMP$387$2, 0, 24ll );
++ FBSTRING* vr$21 = fb_StrConcat( &TMP$387$2, (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)"/", 2ll );
+ fb_StrAssign( (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)vr$21, -1ll, 0 );
+ }
+ label$823:;
+@@ -4804,9 +4813,6 @@ static void FBCDETERMINEPREFIX( void )
+
+ static void FBCSETUPCOMPILERPATHS( void )
+ {
+- FBSTRING TMP$387$1;
+- FBSTRING TMP$388$1;
+- FBSTRING TMP$389$1;
+ FBSTRING TMP$390$1;
+ FBSTRING TMP$391$1;
+ FBSTRING TMP$392$1;
+@@ -4815,6 +4821,9 @@ static void FBCSETUPCOMPILERPATHS( void )
+ FBSTRING TMP$395$1;
+ FBSTRING TMP$396$1;
+ FBSTRING TMP$397$1;
++ FBSTRING TMP$398$1;
++ FBSTRING TMP$399$1;
++ FBSTRING TMP$400$1;
+ label$825:;
+ FBSTRING TARGETID$1;
+ FBSTRING* vr$0 = FBGETTARGETID( );
+@@ -4824,30 +4833,30 @@ static void FBCSETUPCOMPILERPATHS( void )
+ fb_StrAssign( (void*)&FBNAME$1, -1ll, (void*)"freebasic", 10ll, 0 );
+ FBSTRING LIBDIRNAME$1;
+ FBSTRING* vr$6 = fb_StrInit( (void*)&LIBDIRNAME$1, -1ll, (void*)"lib", 4ll, 0 );
+- __builtin_memset( &TMP$387$1, 0, 24ll );
+- FBSTRING* vr$11 = fb_StrConcat( &TMP$387$1, (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)"bin", 4ll );
+- __builtin_memset( &TMP$388$1, 0, 24ll );
+- FBSTRING* vr$14 = fb_StrConcat( &TMP$388$1, (void*)vr$11, -1ll, (void*)"/", 2ll );
+- __builtin_memset( &TMP$389$1, 0, 24ll );
+- FBSTRING* vr$17 = fb_StrConcat( &TMP$389$1, (void*)vr$14, -1ll, (void*)((uint8*)&FBC$ + 2295ll), 129ll );
+- fb_StrAssign( (void*)((uint8*)&FBC$ + 2837ll), 261ll, (void*)vr$17, -1ll, 0 );
+ __builtin_memset( &TMP$390$1, 0, 24ll );
+- FBSTRING* vr$23 = fb_StrConcat( &TMP$390$1, (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)"include", 8ll );
++ FBSTRING* vr$11 = fb_StrConcat( &TMP$390$1, (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)"bin", 4ll );
+ __builtin_memset( &TMP$391$1, 0, 24ll );
+- FBSTRING* vr$26 = fb_StrConcat( &TMP$391$1, (void*)vr$23, -1ll, (void*)"/", 2ll );
++ FBSTRING* vr$14 = fb_StrConcat( &TMP$391$1, (void*)vr$11, -1ll, (void*)"/", 2ll );
+ __builtin_memset( &TMP$392$1, 0, 24ll );
+- FBSTRING* vr$29 = fb_StrConcat( &TMP$392$1, (void*)vr$26, -1ll, (void*)&FBNAME$1, -1ll );
+- fb_StrAssign( (void*)((uint8*)&FBC$ + 3098ll), 261ll, (void*)vr$29, -1ll, 0 );
++ FBSTRING* vr$17 = fb_StrConcat( &TMP$392$1, (void*)vr$14, -1ll, (void*)((uint8*)&FBC$ + 2295ll), 129ll );
++ fb_StrAssign( (void*)((uint8*)&FBC$ + 2837ll), 261ll, (void*)vr$17, -1ll, 0 );
+ __builtin_memset( &TMP$393$1, 0, 24ll );
+- FBSTRING* vr$37 = fb_StrConcat( &TMP$393$1, (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)&LIBDIRNAME$1, -1ll );
++ FBSTRING* vr$23 = fb_StrConcat( &TMP$393$1, (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)"include", 8ll );
+ __builtin_memset( &TMP$394$1, 0, 24ll );
+- FBSTRING* vr$40 = fb_StrConcat( &TMP$394$1, (void*)vr$37, -1ll, (void*)"/", 2ll );
++ FBSTRING* vr$26 = fb_StrConcat( &TMP$394$1, (void*)vr$23, -1ll, (void*)"/", 2ll );
+ __builtin_memset( &TMP$395$1, 0, 24ll );
+- FBSTRING* vr$43 = fb_StrConcat( &TMP$395$1, (void*)vr$40, -1ll, (void*)&FBNAME$1, -1ll );
++ FBSTRING* vr$29 = fb_StrConcat( &TMP$395$1, (void*)vr$26, -1ll, (void*)&FBNAME$1, -1ll );
++ fb_StrAssign( (void*)((uint8*)&FBC$ + 3098ll), 261ll, (void*)vr$29, -1ll, 0 );
+ __builtin_memset( &TMP$396$1, 0, 24ll );
+- FBSTRING* vr$46 = fb_StrConcat( &TMP$396$1, (void*)vr$43, -1ll, (void*)"/", 2ll );
++ FBSTRING* vr$37 = fb_StrConcat( &TMP$396$1, (void*)((uint8*)&FBC$ + 2576ll), 261ll, (void*)&LIBDIRNAME$1, -1ll );
+ __builtin_memset( &TMP$397$1, 0, 24ll );
+- FBSTRING* vr$49 = fb_StrConcat( &TMP$397$1, (void*)vr$46, -1ll, (void*)&TARGETID$1, -1ll );
++ FBSTRING* vr$40 = fb_StrConcat( &TMP$397$1, (void*)vr$37, -1ll, (void*)"/", 2ll );
++ __builtin_memset( &TMP$398$1, 0, 24ll );
++ FBSTRING* vr$43 = fb_StrConcat( &TMP$398$1, (void*)vr$40, -1ll, (void*)&FBNAME$1, -1ll );
++ __builtin_memset( &TMP$399$1, 0, 24ll );
++ FBSTRING* vr$46 = fb_StrConcat( &TMP$399$1, (void*)vr$43, -1ll, (void*)"/", 2ll );
++ __builtin_memset( &TMP$400$1, 0, 24ll );
++ FBSTRING* vr$49 = fb_StrConcat( &TMP$400$1, (void*)vr$46, -1ll, (void*)&TARGETID$1, -1ll );
+ fb_StrAssign( (void*)((uint8*)&FBC$ + 3359ll), 261ll, (void*)vr$49, -1ll, 0 );
+ fb_StrDelete( &LIBDIRNAME$1 );
+ fb_StrDelete( &FBNAME$1 );
+@@ -4857,17 +4866,17 @@ static void FBCSETUPCOMPILERPATHS( void )
+
+ static void FBCPRINTTARGETINFO( void )
+ {
+- FBSTRING TMP$399$1;
+- FBSTRING TMP$400$1;
++ FBSTRING TMP$402$1;
++ FBSTRING TMP$403$1;
+ label$827:;
+ FBSTRING S$1;
+ FBSTRING* vr$0 = FBGETTARGETID( );
+ FBSTRING* vr$2 = fb_StrInit( (void*)&S$1, -1ll, (void*)vr$0, -1ll, 0 );
+ uint8* vr$3 = FBGETFBCARCH( );
+- __builtin_memset( &TMP$399$1, 0, 24ll );
+- FBSTRING* vr$6 = fb_StrConcat( &TMP$399$1, (void*)", ", 3ll, (void*)vr$3, 0ll );
+- __builtin_memset( &TMP$400$1, 0, 24ll );
+- FBSTRING* vr$10 = fb_StrConcat( &TMP$400$1, (void*)&S$1, -1ll, (void*)vr$6, -1ll );
++ __builtin_memset( &TMP$402$1, 0, 24ll );
++ FBSTRING* vr$6 = fb_StrConcat( &TMP$402$1, (void*)", ", 3ll, (void*)vr$3, 0ll );
++ __builtin_memset( &TMP$403$1, 0, 24ll );
++ FBSTRING* vr$10 = fb_StrConcat( &TMP$403$1, (void*)&S$1, -1ll, (void*)vr$6, -1ll );
+ FBSTRING* vr$12 = fb_StrAssign( (void*)&S$1, -1ll, (void*)vr$10, -1ll, 0 );
+ FBSTRING* vr$14 = fb_StrConcatAssign( (void*)&S$1, -1ll, (void*)", ", 3ll, 0 );
+ int64 vr$15 = FBGETBITS( );
+@@ -4896,7 +4905,7 @@ static void FBCDETERMINEMAINNAME( void )
+ int64 vr$1 = fb_StrLen( (void*)((uint8*)&FBC$ + 1117ll), 261ll );
+ if( vr$1 != 0ll ) goto label$834;
+ {
+- FBSTRING TMP$406$2;
++ FBSTRING TMP$409$2;
+ struct $9FBCIOFILE* M$2;
+ void* vr$3 = LISTGETHEAD( (struct $5TLIST*)((uint8*)&FBC$ + 144ll) );
+ M$2 = (struct $9FBCIOFILE*)vr$3;
+@@ -4922,11 +4931,11 @@ static void FBCDETERMINEMAINNAME( void )
+ label$837:;
+ }
+ label$835:;
+- __builtin_memset( &TMP$406$2, 0, 24ll );
+- FBSTRING* vr$14 = fb_StrAssign( (void*)&TMP$406$2, -1ll, (void*)((uint8*)&FBC$ + 1117ll), 261ll, 0 );
+- FBSTRING* vr$16 = HSTRIPEXT( &TMP$406$2 );
++ __builtin_memset( &TMP$409$2, 0, 24ll );
++ FBSTRING* vr$14 = fb_StrAssign( (void*)&TMP$409$2, -1ll, (void*)((uint8*)&FBC$ + 1117ll), 261ll, 0 );
++ FBSTRING* vr$16 = HSTRIPEXT( &TMP$409$2 );
+ fb_StrAssign( (void*)((uint8*)&FBC$ + 1117ll), 261ll, (void*)vr$16, -1ll, 0 );
+- fb_StrDelete( &TMP$406$2 );
++ fb_StrDelete( &TMP$409$2 );
+ }
+ label$834:;
+ label$833:;
+@@ -4935,7 +4944,7 @@ static void FBCDETERMINEMAINNAME( void )
+
+ static FBSTRING* HGETASMNAME( struct $9FBCIOFILE* MODULE$1, int64 STAGE$1 )
+ {
+- FBSTRING TMP$411$1;
++ FBSTRING TMP$414$1;
+ FBSTRING fb$result$1;
+ __builtin_memset( &fb$result$1, 0, 24ll );
+ label$839:;
+@@ -4948,17 +4957,17 @@ static FBSTRING* HGETASMNAME( struct $9FBCIOFILE* MODULE$1, int64 STAGE$1 )
+ if( STAGE$1 != 1ll ) goto label$842;
+ {
+ {
+- int64 TMP$408$3;
++ int64 TMP$411$3;
+ int64 vr$6 = FBGETOPTION( 2ll );
+- TMP$408$3 = vr$6;
+- if( TMP$408$3 != 1ll ) goto label$844;
++ TMP$411$3 = vr$6;
++ if( TMP$411$3 != 1ll ) goto label$844;
+ label$845:;
+ {
+ EXT$1 = (uint8*)".c";
+ }
+ goto label$843;
+ label$844:;
+- if( TMP$408$3 != 2ll ) goto label$846;
++ if( TMP$411$3 != 2ll ) goto label$846;
+ label$847:;
+ {
+ EXT$1 = (uint8*)".ll";
+@@ -4969,8 +4978,8 @@ static FBSTRING* HGETASMNAME( struct $9FBCIOFILE* MODULE$1, int64 STAGE$1 )
+ }
+ label$842:;
+ label$841:;
+- __builtin_memset( &TMP$411$1, 0, 24ll );
+- FBSTRING* vr$10 = fb_StrConcat( &TMP$411$1, (void*)&ASMFILE$1, -1ll, (void*)EXT$1, 0ll );
++ __builtin_memset( &TMP$414$1, 0, 24ll );
++ FBSTRING* vr$10 = fb_StrConcat( &TMP$414$1, (void*)&ASMFILE$1, -1ll, (void*)EXT$1, 0ll );
+ FBSTRING* vr$12 = fb_StrAssign( (void*)&ASMFILE$1, -1ll, (void*)vr$10, -1ll, 0 );
+ FBSTRING* vr$15 = fb_StrAssign( (void*)&fb$result$1, -1ll, (void*)&ASMFILE$1, -1ll, 0 );
+ fb_StrDelete( &ASMFILE$1 );
+@@ -5004,10 +5013,10 @@ static void HCOMPILEBAS( struct $9FBCIOFILE* MODULE$1, int64 IS_MAIN$1, int64 IS
+ FBSTRING* vr$15 = fb_StrAssign( (void*)&PPONLYFILE$1, -1ll, *(void**)((uint8*)MODULE$1 + 24ll), -1ll, 0 );
+ if( *(int64*)((uint8*)MODULE$1 + 32ll) != 0ll ) goto label$855;
+ {
+- FBSTRING TMP$413$3;
++ FBSTRING TMP$416$3;
+ FBSTRING* vr$18 = HSTRIPEXT( &PPONLYFILE$1 );
+- __builtin_memset( &TMP$413$3, 0, 24ll );
+- FBSTRING* vr$21 = fb_StrConcat( &TMP$413$3, (void*)vr$18, -1ll, (void*)".pp.bas", 8ll );
++ __builtin_memset( &TMP$416$3, 0, 24ll );
++ FBSTRING* vr$21 = fb_StrConcat( &TMP$416$3, (void*)vr$18, -1ll, (void*)".pp.bas", 8ll );
+ FBSTRING* vr$23 = fb_StrAssign( (void*)&PPONLYFILE$1, -1ll, (void*)vr$21, -1ll, 0 );
+ }
+ label$855:;
+@@ -5026,9 +5035,9 @@ static void HCOMPILEBAS( struct $9FBCIOFILE* MODULE$1, int64 IS_MAIN$1, int64 IS
+ int64 vr$29 = FBGETOPTION( 1ll );
+ if( vr$29 == 0ll ) goto label$859;
+ {
+- FBSTRING TMP$417$3;
+- __builtin_memset( &TMP$417$3, 0, 24ll );
+- FBSTRING* vr$33 = fb_StrConcat( &TMP$417$3, (void*)" -pp ", 6ll, (void*)&PPONLYFILE$1, -1ll );
++ FBSTRING TMP$420$3;
++ __builtin_memset( &TMP$420$3, 0, 24ll );
++ FBSTRING* vr$33 = fb_StrConcat( &TMP$420$3, (void*)" -pp ", 6ll, (void*)&PPONLYFILE$1, -1ll );
+ fb_PrintString( 0, vr$33, 0 );
+ }
+ label$859:;
+@@ -5120,12 +5129,12 @@ static void HCOMPILEMODULES( void )
+ struct $9FBCIOFILE* MODULE$1;
+ ISMAIN$1 = 0ll;
+ {
+- int64 TMP$420$2;
++ int64 TMP$423$2;
+ int64 vr$1 = FBGETOPTION( 0ll );
+- TMP$420$2 = vr$1;
+- if( TMP$420$2 == 0ll ) goto label$880;
++ TMP$423$2 = vr$1;
++ if( TMP$423$2 == 0ll ) goto label$880;
+ label$881:;
+- if( TMP$420$2 != 2ll ) goto label$879;
++ if( TMP$423$2 != 2ll ) goto label$879;
+ label$880:;
+ {
+ CHECKMAIN$1 = -1ll;
+@@ -5160,14 +5169,14 @@ static void HCOMPILEMODULES( void )
+ {
+ if( CHECKMAIN$1 == 0ll ) goto label$891;
+ {
+- FBSTRING TMP$421$3;
+- __builtin_memset( &TMP$421$3, 0, 24ll );
++ FBSTRING TMP$424$3;
++ __builtin_memset( &TMP$424$3, 0, 24ll );
+ FBSTRING* vr$16 = HSTRIPEXT( (FBSTRING*)MODULE$1 );
+- FBSTRING* vr$18 = fb_StrAssign( (void*)&TMP$421$3, -1ll, (void*)vr$16, -1ll, 0 );
+- FBSTRING* vr$19 = HSTRIPPATH( *(uint8**)&TMP$421$3 );
++ FBSTRING* vr$18 = fb_StrAssign( (void*)&TMP$424$3, -1ll, (void*)vr$16, -1ll, 0 );
++ FBSTRING* vr$19 = HSTRIPPATH( *(uint8**)&TMP$424$3 );
+ int32 vr$21 = fb_StrCompare( (void*)&MAINFILE$1, -1ll, (void*)vr$19, -1ll );
+ ISMAIN$1 = (int64)-((int64)vr$21 == 0ll);
+- fb_StrDelete( &TMP$421$3 );
++ fb_StrDelete( &TMP$424$3 );
+ }
+ label$891:;
+ label$890:;
+@@ -5184,24 +5193,24 @@ static void HCOMPILEMODULES( void )
+
+ static int64 HPARSEXPM( FBSTRING* XPMFILE$1, FBSTRING* CODE$1 )
+ {
+- FBSTRING TMP$423$1;
+- FBSTRING TMP$425$1;
+- FBSTRING TMP$427$1;
+- FBSTRING TMP$435$1;
+- FBSTRING TMP$437$1;
+- FBSTRING TMP$439$1;
+- FBSTRING TMP$443$1;
++ FBSTRING TMP$426$1;
++ FBSTRING TMP$428$1;
++ FBSTRING TMP$430$1;
++ FBSTRING TMP$438$1;
++ FBSTRING TMP$440$1;
++ FBSTRING TMP$442$1;
++ FBSTRING TMP$446$1;
+ int64 fb$result$1;
+ __builtin_memset( &fb$result$1, 0, 8ll );
+ label$892:;
+- __builtin_memset( &TMP$423$1, 0, 24ll );
+- FBSTRING* vr$3 = fb_StrConcat( &TMP$423$1, (void*)CODE$1, -1ll, (void*)"\x0A" "dim shared as zstring ptr ", 28ll );
++ __builtin_memset( &TMP$426$1, 0, 24ll );
++ FBSTRING* vr$3 = fb_StrConcat( &TMP$426$1, (void*)CODE$1, -1ll, (void*)"\x0A" "dim shared as zstring ptr ", 28ll );
+ FBSTRING* vr$4 = fb_StrAssign( (void*)CODE$1, -1ll, (void*)vr$3, -1ll, 0 );
+- __builtin_memset( &TMP$425$1, 0, 24ll );
+- FBSTRING* vr$7 = fb_StrConcat( &TMP$425$1, (void*)CODE$1, -1ll, (void*)"fb_program_icon_data", 21ll );
++ __builtin_memset( &TMP$428$1, 0, 24ll );
++ FBSTRING* vr$7 = fb_StrConcat( &TMP$428$1, (void*)CODE$1, -1ll, (void*)"fb_program_icon_data", 21ll );
+ FBSTRING* vr$8 = fb_StrAssign( (void*)CODE$1, -1ll, (void*)vr$7, -1ll, 0 );
+- __builtin_memset( &TMP$427$1, 0, 24ll );
+- FBSTRING* vr$11 = fb_StrConcat( &TMP$427$1, (void*)CODE$1, -1ll, (void*)"(0 to ...) = _\x0A{ _\x0A", 20ll );
++ __builtin_memset( &TMP$430$1, 0, 24ll );
++ FBSTRING* vr$11 = fb_StrConcat( &TMP$430$1, (void*)CODE$1, -1ll, (void*)"(0 to ...) = _\x0A{ _\x0A", 20ll );
+ FBSTRING* vr$12 = fb_StrAssign( (void*)CODE$1, -1ll, (void*)vr$11, -1ll, 0 );
+ int64 F$1;
+ int32 vr$13 = fb_FileFree( );
+@@ -5249,21 +5258,21 @@ static int64 HPARSEXPM( FBSTRING* XPMFILE$1, FBSTRING* CODE$1 )
+ int64 vr$54 = fb_StrLen( (void*)&LN$1, -1ll );
+ if( vr$54 <= 0ll ) goto label$902;
+ {
+- FBSTRING TMP$432$3;
+- FBSTRING TMP$433$3;
++ FBSTRING TMP$435$3;
++ FBSTRING TMP$436$3;
+ if( SAW_ROWS$1 == 0ll ) goto label$904;
+ {
+- FBSTRING TMP$430$4;
+- __builtin_memset( &TMP$430$4, 0, 24ll );
+- FBSTRING* vr$57 = fb_StrConcat( &TMP$430$4, (void*)CODE$1, -1ll, (void*)", _\x0A", 5ll );
++ FBSTRING TMP$433$4;
++ __builtin_memset( &TMP$433$4, 0, 24ll );
++ FBSTRING* vr$57 = fb_StrConcat( &TMP$433$4, (void*)CODE$1, -1ll, (void*)", _\x0A", 5ll );
+ FBSTRING* vr$58 = fb_StrAssign( (void*)CODE$1, -1ll, (void*)vr$57, -1ll, 0 );
+ }
+ label$904:;
+ label$903:;
+- __builtin_memset( &TMP$432$3, 0, 24ll );
+- FBSTRING* vr$62 = fb_StrConcat( &TMP$432$3, (void*)"\x09@", 3ll, (void*)&LN$1, -1ll );
+- __builtin_memset( &TMP$433$3, 0, 24ll );
+- FBSTRING* vr$65 = fb_StrConcat( &TMP$433$3, (void*)CODE$1, -1ll, (void*)vr$62, -1ll );
++ __builtin_memset( &TMP$435$3, 0, 24ll );
++ FBSTRING* vr$62 = fb_StrConcat( &TMP$435$3, (void*)"\x09@", 3ll, (void*)&LN$1, -1ll );
++ __builtin_memset( &TMP$436$3, 0, 24ll );
++ FBSTRING* vr$65 = fb_StrConcat( &TMP$436$3, (void*)CODE$1, -1ll, (void*)vr$62, -1ll );
+ FBSTRING* vr$66 = fb_StrAssign( (void*)CODE$1, -1ll, (void*)vr$65, -1ll, 0 );
+ SAW_ROWS$1 = -1ll;
+ }
+@@ -5284,17 +5293,17 @@ static int64 HPARSEXPM( FBSTRING* XPMFILE$1, FBSTRING* CODE$1 )
+ }
+ label$907:;
+ label$906:;
+- __builtin_memset( &TMP$435$1, 0, 24ll );
+- FBSTRING* vr$74 = fb_StrConcat( &TMP$435$1, (void*)CODE$1, -1ll, (void*)" _ \x0A", 5ll );
++ __builtin_memset( &TMP$438$1, 0, 24ll );
++ FBSTRING* vr$74 = fb_StrConcat( &TMP$438$1, (void*)CODE$1, -1ll, (void*)" _ \x0A", 5ll );
+ FBSTRING* vr$75 = fb_StrAssign( (void*)CODE$1, -1ll, (void*)vr$74, -1ll, 0 );
+- __builtin_memset( &TMP$437$1, 0, 24ll );
+- FBSTRING* vr$78 = fb_StrConcat( &TMP$437$1, (void*)CODE$1, -1ll, (void*)"}\x0A\x0A", 4ll );
++ __builtin_memset( &TMP$440$1, 0, 24ll );
++ FBSTRING* vr$78 = fb_StrConcat( &TMP$440$1, (void*)CODE$1, -1ll, (void*)"}\x0A\x0A", 4ll );
+ FBSTRING* vr$79 = fb_StrAssign( (void*)CODE$1, -1ll, (void*)vr$78, -1ll, 0 );
+- __builtin_memset( &TMP$439$1, 0, 24ll );
+- FBSTRING* vr$82 = fb_StrConcat( &TMP$439$1, (void*)CODE$1, -1ll, (void*)"extern as zstring ptr ptr fb_program_icon alias \x22" "fb_program_icon\x22\x0A", 67ll );
++ __builtin_memset( &TMP$442$1, 0, 24ll );
++ FBSTRING* vr$82 = fb_StrConcat( &TMP$442$1, (void*)CODE$1, -1ll, (void*)"extern as zstring ptr ptr fb_program_icon alias \x22" "fb_program_icon\x22\x0A", 67ll );
+ FBSTRING* vr$83 = fb_StrAssign( (void*)CODE$1, -1ll, (void*)vr$82, -1ll, 0 );
+- __builtin_memset( &TMP$443$1, 0, 24ll );
+- FBSTRING* vr$86 = fb_StrConcat( &TMP$443$1, (void*)CODE$1, -1ll, (void*)"dim shared as zstring ptr ptr fb_program_icon = @fb_program_icon_data(0)\x0A", 74ll );
++ __builtin_memset( &TMP$446$1, 0, 24ll );
++ FBSTRING* vr$86 = fb_StrConcat( &TMP$446$1, (void*)CODE$1, -1ll, (void*)"dim shared as zstring ptr ptr fb_program_icon = @fb_program_icon_data(0)\x0A", 74ll );
+ FBSTRING* vr$87 = fb_StrAssign( (void*)CODE$1, -1ll, (void*)vr$86, -1ll, 0 );
+ fb$result$1 = -1ll;
+ fb_StrDelete( &LN$1 );
+@@ -5304,7 +5313,7 @@ static int64 HPARSEXPM( FBSTRING* XPMFILE$1, FBSTRING* CODE$1 )
+
+ static int64 HCOMPILEXPM( void )
+ {
+- int64 TMP$448$1;
++ int64 TMP$451$1;
+ int64 fb$result$1;
+ __builtin_memset( &fb$result$1, 0, 8ll );
+ label$908:;
+@@ -5335,14 +5344,14 @@ static int64 HCOMPILEXPM( void )
+ FBSTRING* vr$15 = fb_StrConcatAssign( (void*)((uint8*)&FBC$ + 272ll), -1ll, (void*)".bas", 5ll, 0 );
+ if( *(int64*)((uint8*)&FBC$ + 112ll) == 0ll ) goto label$915;
+ {
+- FBSTRING TMP$446$2;
+- FBSTRING TMP$447$2;
++ FBSTRING TMP$449$2;
++ FBSTRING TMP$450$2;
+ FBSTRING* vr$16 = fb_StrAllocTempDescZEx( (uint8*)"parsing xpm: ", 13ll );
+ fb_PrintString( 0, vr$16, 2 );
+- __builtin_memset( &TMP$446$2, 0, 24ll );
+- FBSTRING* vr$21 = fb_StrConcat( &TMP$446$2, (void*)&XPMFILE$1, -1ll, (void*)" -o ", 5ll );
+- __builtin_memset( &TMP$447$2, 0, 24ll );
+- FBSTRING* vr$24 = fb_StrConcat( &TMP$447$2, (void*)vr$21, -1ll, (void*)((uint8*)&FBC$ + 272ll), -1ll );
++ __builtin_memset( &TMP$449$2, 0, 24ll );
++ FBSTRING* vr$21 = fb_StrConcat( &TMP$449$2, (void*)&XPMFILE$1, -1ll, (void*)" -o ", 5ll );
++ __builtin_memset( &TMP$450$2, 0, 24ll );
++ FBSTRING* vr$24 = fb_StrConcat( &TMP$450$2, (void*)vr$21, -1ll, (void*)((uint8*)&FBC$ + 272ll), -1ll );
+ fb_PrintString( 0, vr$24, 1 );
+ }
+ label$915:;
+@@ -5367,8 +5376,8 @@ static int64 HCOMPILEXPM( void )
+ }
+ label$919:;
+ label$918:;
+- TMP$448$1 = FO$1;
+- fb_PrintString( (int32)TMP$448$1, &CODE$1, 0 );
++ TMP$451$1 = FO$1;
++ fb_PrintString( (int32)TMP$451$1, &CODE$1, 0 );
+ int32 vr$41 = fb_FileClose( (int32)FO$1 );
+ if( (int64)vr$41 == 0ll ) goto label$920;
+ void* vr$43 = fb_ErrorThrowAt( 2805, (uint8*)"src/compiler/fbc.bas", (void*)0ull, (void*)0ull );
+@@ -5406,24 +5415,24 @@ static int64 HCOMPILESTAGE2MODULE( struct $9FBCIOFILE* MODULE$1 )
+ label$926:;
+ label$925:;
+ {
+- int64 TMP$449$2;
++ int64 TMP$452$2;
+ int64 vr$7 = FBGETOPTION( 2ll );
+- TMP$449$2 = vr$7;
+- if( TMP$449$2 != 1ll ) goto label$928;
++ TMP$452$2 = vr$7;
++ if( TMP$452$2 != 1ll ) goto label$928;
+ label$929:;
+ {
+ {
+- int64 TMP$450$4;
++ int64 TMP$453$4;
+ int64 vr$8 = FBGETCPUFAMILY( );
+- TMP$450$4 = vr$8;
+- if( TMP$450$4 != 0ll ) goto label$931;
++ TMP$453$4 = vr$8;
++ if( TMP$453$4 != 0ll ) goto label$931;
+ label$932:;
+ {
+ FBSTRING* vr$10 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)"-m32 ", 6ll, 0 );
+ }
+ goto label$930;
+ label$931:;
+- if( TMP$450$4 != 1ll ) goto label$933;
++ if( TMP$453$4 != 1ll ) goto label$933;
+ label$934:;
+ {
+ FBSTRING* vr$12 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)"-m64 ", 6ll, 0 );
+@@ -5438,16 +5447,16 @@ static int64 HCOMPILESTAGE2MODULE( struct $9FBCIOFILE* MODULE$1 )
+ goto label$935;
+ label$936:;
+ {
+- FBSTRING TMP$455$4;
+- FBSTRING TMP$456$4;
+- FBSTRING TMP$457$4;
++ FBSTRING TMP$458$4;
++ FBSTRING TMP$459$4;
++ FBSTRING TMP$460$4;
+ uint8* vr$15 = FBGETGCCARCH( );
+- __builtin_memset( &TMP$455$4, 0, 24ll );
+- FBSTRING* vr$18 = fb_StrConcat( &TMP$455$4, (void*)"-march=", 8ll, (void*)vr$15, 0ll );
+- __builtin_memset( &TMP$456$4, 0, 24ll );
+- FBSTRING* vr$21 = fb_StrConcat( &TMP$456$4, (void*)vr$18, -1ll, (void*)" ", 2ll );
+- __builtin_memset( &TMP$457$4, 0, 24ll );
+- FBSTRING* vr$25 = fb_StrConcat( &TMP$457$4, (void*)&LN$1, -1ll, (void*)vr$21, -1ll );
++ __builtin_memset( &TMP$458$4, 0, 24ll );
++ FBSTRING* vr$18 = fb_StrConcat( &TMP$458$4, (void*)"-march=", 8ll, (void*)vr$15, 0ll );
++ __builtin_memset( &TMP$459$4, 0, 24ll );
++ FBSTRING* vr$21 = fb_StrConcat( &TMP$459$4, (void*)vr$18, -1ll, (void*)" ", 2ll );
++ __builtin_memset( &TMP$460$4, 0, 24ll );
++ FBSTRING* vr$25 = fb_StrConcat( &TMP$460$4, (void*)&LN$1, -1ll, (void*)vr$21, -1ll );
+ FBSTRING* vr$27 = fb_StrAssign( (void*)&LN$1, -1ll, (void*)vr$25, -1ll, 0 );
+ }
+ label$935:;
+@@ -5486,12 +5495,12 @@ static int64 HCOMPILESTAGE2MODULE( struct $9FBCIOFILE* MODULE$1 )
+ label$942:;
+ label$941:;
+ {
+- int64 TMP$474$4;
++ int64 TMP$477$4;
+ int64 vr$61 = FBGETCPUFAMILY( );
+- TMP$474$4 = vr$61;
+- if( TMP$474$4 == 0ll ) goto label$945;
++ TMP$477$4 = vr$61;
++ if( TMP$477$4 == 0ll ) goto label$945;
+ label$946:;
+- if( TMP$474$4 != 1ll ) goto label$944;
++ if( TMP$477$4 != 1ll ) goto label$944;
+ label$945:;
+ {
+ int64 vr$62 = FBGETOPTION( 9ll );
+@@ -5508,35 +5517,35 @@ static int64 HCOMPILESTAGE2MODULE( struct $9FBCIOFILE* MODULE$1 )
+ }
+ goto label$927;
+ label$928:;
+- if( TMP$449$2 != 2ll ) goto label$949;
++ if( TMP$452$2 != 2ll ) goto label$949;
+ label$950:;
+ {
+ {
+- int64 TMP$476$4;
++ int64 TMP$479$4;
+ int64 vr$65 = FBGETCPUFAMILY( );
+- TMP$476$4 = vr$65;
+- if( TMP$476$4 != 0ll ) goto label$952;
++ TMP$479$4 = vr$65;
++ if( TMP$479$4 != 0ll ) goto label$952;
+ label$953:;
+ {
+ FBSTRING* vr$67 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)"-march=x86 ", 12ll, 0 );
+ }
+ goto label$951;
+ label$952:;
+- if( TMP$476$4 != 1ll ) goto label$954;
++ if( TMP$479$4 != 1ll ) goto label$954;
+ label$955:;
+ {
+ FBSTRING* vr$69 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)"-march=x86-64 ", 15ll, 0 );
+ }
+ goto label$951;
+ label$954:;
+- if( TMP$476$4 != 2ll ) goto label$956;
++ if( TMP$479$4 != 2ll ) goto label$956;
+ label$957:;
+ {
+ FBSTRING* vr$71 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)"-march=arm ", 12ll, 0 );
+ }
+ goto label$951;
+ label$956:;
+- if( TMP$476$4 != 3ll ) goto label$958;
++ if( TMP$479$4 != 3ll ) goto label$958;
+ label$959:;
+ {
+ FBSTRING* vr$73 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)"-march=aarch64 ", 16ll, 0 );
+@@ -5557,12 +5566,12 @@ static int64 HCOMPILESTAGE2MODULE( struct $9FBCIOFILE* MODULE$1 )
+ FBSTRING* vr$82 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)vr$80, -1ll, 0 );
+ FBSTRING* vr$84 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)" ", 2ll, 0 );
+ {
+- int64 TMP$482$4;
++ int64 TMP$485$4;
+ int64 vr$85 = FBGETCPUFAMILY( );
+- TMP$482$4 = vr$85;
+- if( TMP$482$4 == 0ll ) goto label$964;
++ TMP$485$4 = vr$85;
++ if( TMP$485$4 == 0ll ) goto label$964;
+ label$965:;
+- if( TMP$482$4 != 1ll ) goto label$963;
++ if( TMP$485$4 != 1ll ) goto label$963;
+ label$964:;
+ {
+ int64 vr$86 = FBGETOPTION( 9ll );
+@@ -5589,10 +5598,10 @@ static int64 HCOMPILESTAGE2MODULE( struct $9FBCIOFILE* MODULE$1 )
+ FBSTRING* vr$102 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)"\x22", 2ll, 0 );
+ FBSTRING* vr$105 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)((uint8*)&FBC$ + 2038ll), 128ll, 0 );
+ {
+- int64 TMP$486$2;
++ int64 TMP$489$2;
+ int64 vr$106 = FBGETOPTION( 2ll );
+- TMP$486$2 = vr$106;
+- if( TMP$486$2 != 1ll ) goto label$969;
++ TMP$489$2 = vr$106;
++ if( TMP$489$2 != 1ll ) goto label$969;
+ label$970:;
+ {
+ int64 vr$108 = FBCRUNBIN( (uint8*)"compiling C", 3ll, &LN$1 );
+@@ -5600,7 +5609,7 @@ static int64 HCOMPILESTAGE2MODULE( struct $9FBCIOFILE* MODULE$1 )
+ }
+ goto label$968;
+ label$969:;
+- if( TMP$486$2 != 2ll ) goto label$971;
++ if( TMP$489$2 != 2ll ) goto label$971;
+ label$972:;
+ {
+ int64 vr$110 = FBCRUNBIN( (uint8*)"compiling LLVM IR", 4ll, &LN$1 );
+@@ -5641,19 +5650,19 @@ static void HCOMPILESTAGE2MODULES( void )
+
+ static int64 HASSEMBLEMODULE( struct $9FBCIOFILE* MODULE$1 )
+ {
+- FBSTRING TMP$495$1;
+- FBSTRING TMP$496$1;
+- FBSTRING TMP$497$1;
++ FBSTRING TMP$498$1;
++ FBSTRING TMP$499$1;
++ FBSTRING TMP$500$1;
+ int64 fb$result$1;
+ __builtin_memset( &fb$result$1, 0, 8ll );
+ label$979:;
+ FBSTRING LN$1;
+ __builtin_memset( &LN$1, 0, 24ll );
+ {
+- int64 TMP$489$2;
++ int64 TMP$492$2;
+ int64 vr$2 = FBGETCPUFAMILY( );
+- TMP$489$2 = vr$2;
+- if( TMP$489$2 != 0ll ) goto label$982;
++ TMP$492$2 = vr$2;
++ if( TMP$492$2 != 0ll ) goto label$982;
+ label$983:;
+ {
+ int64 vr$3 = FBGETOPTION( 3ll );
+@@ -5670,7 +5679,7 @@ static int64 HASSEMBLEMODULE( struct $9FBCIOFILE* MODULE$1 )
+ }
+ goto label$981;
+ label$982:;
+- if( TMP$489$2 != 1ll ) goto label$986;
++ if( TMP$492$2 != 1ll ) goto label$986;
+ label$987:;
+ {
+ int64 vr$8 = FBGETOPTION( 3ll );
+@@ -5705,12 +5714,12 @@ static int64 HASSEMBLEMODULE( struct $9FBCIOFILE* MODULE$1 )
+ FBSTRING* vr$19 = HGETASMNAME( MODULE$1, 2ll );
+ FBSTRING* vr$21 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)vr$19, -1ll, 0 );
+ FBSTRING* vr$23 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)"\x22 ", 3ll, 0 );
+- __builtin_memset( &TMP$495$1, 0, 24ll );
+- FBSTRING* vr$27 = fb_StrConcat( &TMP$495$1, (void*)"-o \x22", 5ll, *(void**)((uint8*)MODULE$1 + 24ll), -1ll );
+- __builtin_memset( &TMP$496$1, 0, 24ll );
+- FBSTRING* vr$30 = fb_StrConcat( &TMP$496$1, (void*)vr$27, -1ll, (void*)"\x22", 2ll );
+- __builtin_memset( &TMP$497$1, 0, 24ll );
+- FBSTRING* vr$34 = fb_StrConcat( &TMP$497$1, (void*)&LN$1, -1ll, (void*)vr$30, -1ll );
++ __builtin_memset( &TMP$498$1, 0, 24ll );
++ FBSTRING* vr$27 = fb_StrConcat( &TMP$498$1, (void*)"-o \x22", 5ll, *(void**)((uint8*)MODULE$1 + 24ll), -1ll );
++ __builtin_memset( &TMP$499$1, 0, 24ll );
++ FBSTRING* vr$30 = fb_StrConcat( &TMP$499$1, (void*)vr$27, -1ll, (void*)"\x22", 2ll );
++ __builtin_memset( &TMP$500$1, 0, 24ll );
++ FBSTRING* vr$34 = fb_StrConcat( &TMP$500$1, (void*)&LN$1, -1ll, (void*)vr$30, -1ll );
+ FBSTRING* vr$36 = fb_StrAssign( (void*)&LN$1, -1ll, (void*)vr$34, -1ll, 0 );
+ FBSTRING* vr$39 = fb_StrConcatAssign( (void*)&LN$1, -1ll, (void*)((uint8*)&FBC$ + 1782ll), 128ll, 0 );
+ int64 vr$41 = FBCRUNBIN( (uint8*)"assembling", 0ll, &LN$1 );
+@@ -5759,30 +5768,30 @@ static void HASSEMBLEMODULES( void )
+
+ static int64 HASSEMBLERC( struct $9FBCIOFILE* RC$1 )
+ {
+- FBSTRING TMP$500$1;
+- FBSTRING TMP$501$1;
+- FBSTRING TMP$502$1;
+ FBSTRING TMP$503$1;
+ FBSTRING TMP$504$1;
+ FBSTRING TMP$505$1;
++ FBSTRING TMP$506$1;
++ FBSTRING TMP$507$1;
++ FBSTRING TMP$508$1;
+ int64 fb$result$1;
+ __builtin_memset( &fb$result$1, 0, 8ll );
+ label$1004:;
+ FBSTRING LN$1;
+ FBSTRING* vr$2 = fb_StrInit( (void*)&LN$1, -1ll, (void*)"--output-format=coff --include-dir=.", 37ll, 0 );
+- __builtin_memset( &TMP$500$1, 0, 24ll );
+- FBSTRING* vr$7 = fb_StrConcat( &TMP$500$1, (void*)" \x22", 3ll, (void*)RC$1, -1ll );
+- __builtin_memset( &TMP$501$1, 0, 24ll );
+- FBSTRING* vr$10 = fb_StrConcat( &TMP$501$1, (void*)vr$7, -1ll, (void*)"\x22", 2ll );
+- __builtin_memset( &TMP$502$1, 0, 24ll );
+- FBSTRING* vr$14 = fb_StrConcat( &TMP$502$1, (void*)&LN$1, -1ll, (void*)vr$10, -1ll );
+- FBSTRING* vr$16 = fb_StrAssign( (void*)&LN$1, -1ll, (void*)vr$14, -1ll, 0 );
+ __builtin_memset( &TMP$503$1, 0, 24ll );
+- FBSTRING* vr$20 = fb_StrConcat( &TMP$503$1, (void*)" \x22", 3ll, *(void**)((uint8*)RC$1 + 24ll), -1ll );
++ FBSTRING* vr$7 = fb_StrConcat( &TMP$503$1, (void*)" \x22", 3ll, (void*)RC$1, -1ll );
+ __builtin_memset( &TMP$504$1, 0, 24ll );
+- FBSTRING* vr$23 = fb_StrConcat( &TMP$504$1, (void*)vr$20, -1ll, (void*)"\x22", 2ll );
++ FBSTRING* vr$10 = fb_StrConcat( &TMP$504$1, (void*)vr$7, -1ll, (void*)"\x22", 2ll );
+ __builtin_memset( &TMP$505$1, 0, 24ll );
+- FBSTRING* vr$27 = fb_StrConcat( &TMP$505$1, (void*)&LN$1, -1ll, (void*)vr$23, -1ll );
++ FBSTRING* vr$14 = fb_StrConcat( &TMP$505$1, (void*)&LN$1, -1ll, (void*)vr$10, -1ll );
++ FBSTRING* vr$16 = fb_StrAssign( (void*)&LN$1, -1ll, (void*)vr$14, -1ll, 0 );
++ __builtin_memset( &TMP$506$1, 0, 24ll );
++ FBSTRING* vr$20 = fb_StrConcat( &TMP$506$1, (void*)" \x22", 3ll, *(void**)((uint8*)RC$1 + 24ll), -1ll );
++ __builtin_memset( &TMP$507$1, 0, 24ll );
++ FBSTRING* vr$23 = fb_StrConcat( &TMP$507$1, (void*)vr$20, -1ll, (void*)"\x22", 2ll );
++ __builtin_memset( &TMP$508$1, 0, 24ll );
++ FBSTRING* vr$27 = fb_StrConcat( &TMP$508$1, (void*)&LN$1, -1ll, (void*)vr$23, -1ll );
+ FBSTRING* vr$29 = fb_StrAssign( (void*)&LN$1, -1ll, (void*)vr$27, -1ll, 0 );
+ int64 vr$31 = FBCRUNBIN( (uint8*)"compiling rc", 7ll, &LN$1 );
+ fb$result$1 = vr$31;
+@@ -5908,8 +5917,8 @@ static int64 HCOMPILEFBCTINF( void )
+
+ static int64 HARCHIVEFILES( void )
+ {
+- FBSTRING TMP$510$1;
+- FBSTRING TMP$511$1;
++ FBSTRING TMP$513$1;
++ FBSTRING TMP$514$1;
+ int64 fb$result$1;
+ __builtin_memset( &fb$result$1, 0, 8ll );
+ label$1033:;
+@@ -5922,16 +5931,16 @@ static int64 HARCHIVEFILES( void )
+ label$1036:;
+ label$1035:;
+ FBSTRING LN$1;
+- __builtin_memset( &TMP$510$1, 0, 24ll );
+- FBSTRING* vr$8 = fb_StrConcat( &TMP$510$1, (void*)"-rsc \x22", 7ll, (void*)((uint8*)&FBC$ + 856ll), 261ll );
+- __builtin_memset( &TMP$511$1, 0, 24ll );
+- FBSTRING* vr$11 = fb_StrConcat( &TMP$511$1, (void*)vr$8, -1ll, (void*)"\x22 ", 3ll );
++ __builtin_memset( &TMP$513$1, 0, 24ll );
++ FBSTRING* vr$8 = fb_StrConcat( &TMP$513$1, (void*)"-rsc \x22", 7ll, (void*)((uint8*)&FBC$ + 856ll), 261ll );
++ __builtin_memset( &TMP$514$1, 0, 24ll );
++ FBSTRING* vr$11 = fb_StrConcat( &TMP$514$1, (void*)vr$8, -1ll, (void*)"\x22 ", 3ll );
+ FBSTRING* vr$13 = fb_StrInit( (void*)&LN$1, -1ll, (void*)vr$11, -1ll, 0 );
+ int64 vr$14 = FBGETOPTION( 29ll );
+ int64 vr$15 = FBISCROSSCOMP( );
+ if( (vr$14 & ~vr$15) == 0ll ) goto label$1038;
+ {
+- FBSTRING TMP$515$2;
++ FBSTRING TMP$518$2;
+ int64 vr$18 = HCOMPILEFBCTINF( );
+ if( vr$18 == 0ll ) goto label$1040;
+ {
+@@ -5939,10 +5948,10 @@ static int64 HARCHIVEFILES( void )
+ }
+ label$1040:;
+ label$1039:;
+- __builtin_memset( &TMP$515$2, 0, 24ll );
+- FBSTRING* vr$23 = fb_StrAssign( (void*)&TMP$515$2, -1ll, (void*)"__fb_ct.inf", 12ll, 0 );
+- FBCADDTEMP( &TMP$515$2 );
+- fb_StrDelete( &TMP$515$2 );
++ __builtin_memset( &TMP$518$2, 0, 24ll );
++ FBSTRING* vr$23 = fb_StrAssign( (void*)&TMP$518$2, -1ll, (void*)"__fb_ct.inf", 12ll, 0 );
++ FBCADDTEMP( &TMP$518$2 );
++ fb_StrDelete( &TMP$518$2 );
+ }
+ label$1038:;
+ label$1037:;
+@@ -5952,15 +5961,15 @@ static int64 HARCHIVEFILES( void )
+ label$1041:;
+ if( OBJFILE$1 == (FBSTRING*)0ull ) goto label$1042;
+ {
+- FBSTRING TMP$516$2;
+- FBSTRING TMP$517$2;
+- FBSTRING TMP$518$2;
+- __builtin_memset( &TMP$516$2, 0, 24ll );
+- FBSTRING* vr$30 = fb_StrConcat( &TMP$516$2, (void*)"\x22", 2ll, (void*)OBJFILE$1, -1ll );
+- __builtin_memset( &TMP$517$2, 0, 24ll );
+- FBSTRING* vr$33 = fb_StrConcat( &TMP$517$2, (void*)vr$30, -1ll, (void*)"\x22 ", 3ll );
+- __builtin_memset( &TMP$518$2, 0, 24ll );
+- FBSTRING* vr$37 = fb_StrConcat( &TMP$518$2, (void*)&LN$1, -1ll, (void*)vr$33, -1ll );
++ FBSTRING TMP$519$2;
++ FBSTRING TMP$520$2;
++ FBSTRING TMP$521$2;
++ __builtin_memset( &TMP$519$2, 0, 24ll );
++ FBSTRING* vr$30 = fb_StrConcat( &TMP$519$2, (void*)"\x22", 2ll, (void*)OBJFILE$1, -1ll );
++ __builtin_memset( &TMP$520$2, 0, 24ll );
++ FBSTRING* vr$33 = fb_StrConcat( &TMP$520$2, (void*)vr$30, -1ll, (void*)"\x22 ", 3ll );
++ __builtin_memset( &TMP$521$2, 0, 24ll );
++ FBSTRING* vr$37 = fb_StrConcat( &TMP$521$2, (void*)&LN$1, -1ll, (void*)vr$33, -1ll );
+ FBSTRING* vr$39 = fb_StrAssign( (void*)&LN$1, -1ll, (void*)vr$37, -1ll, 0 );
+ void* vr$40 = LISTGETNEXT( (void*)OBJFILE$1 );
+ OBJFILE$1 = (FBSTRING*)vr$40;
+@@ -5976,30 +5985,30 @@ static int64 HARCHIVEFILES( void )
+
+ static void HSETDEFAULTLIBPATHS( void )
+ {
+- FBSTRING TMP$520$1;
+- FBSTRING TMP$521$1;
++ FBSTRING TMP$523$1;
++ FBSTRING TMP$524$1;
+ label$1043:;
+- __builtin_memset( &TMP$520$1, 0, 24ll );
+- FBSTRING* vr$3 = fb_StrAssign( (void*)&TMP$520$1, -1ll, (void*)((uint8*)&FBC$ + 3359ll), 261ll, 0 );
+- FBCADDDEFLIBPATH( &TMP$520$1 );
+- fb_StrDelete( &TMP$520$1 );
+- __builtin_memset( &TMP$521$1, 0, 24ll );
+- FBSTRING* vr$8 = fb_StrAssign( (void*)&TMP$521$1, -1ll, (void*)".", 2ll, 0 );
+- FBCADDDEFLIBPATH( &TMP$521$1 );
+- fb_StrDelete( &TMP$521$1 );
++ __builtin_memset( &TMP$523$1, 0, 24ll );
++ FBSTRING* vr$3 = fb_StrAssign( (void*)&TMP$523$1, -1ll, (void*)((uint8*)&FBC$ + 3359ll), 261ll, 0 );
++ FBCADDDEFLIBPATH( &TMP$523$1 );
++ fb_StrDelete( &TMP$523$1 );
++ __builtin_memset( &TMP$524$1, 0, 24ll );
++ FBSTRING* vr$8 = fb_StrAssign( (void*)&TMP$524$1, -1ll, (void*)".", 2ll, 0 );
++ FBCADDDEFLIBPATH( &TMP$524$1 );
++ fb_StrDelete( &TMP$524$1 );
+ FBCADDLIBPATHFOR( (uint8*)"libgcc.a" );
+ {
+- int64 TMP$523$2;
++ int64 TMP$526$2;
+ int64 vr$11 = FBGETOPTION( 3ll );
+- TMP$523$2 = vr$11;
+- if( TMP$523$2 != 3ll ) goto label$1046;
++ TMP$526$2 = vr$11;
++ if( TMP$526$2 != 3ll ) goto label$1046;
+ label$1047:;
+ {
+ FBCADDLIBPATHFOR( (uint8*)"libm.a" );
+ }
+ goto label$1045;
+ label$1046:;
+- if( TMP$523$2 != 0ll ) goto label$1048;
++ if( TMP$526$2 != 0ll ) goto label$1048;
+ label$1049:;
+ {
+ FBCADDLIBPATHFOR( (uint8*)"libmingw32.a" );
+@@ -6012,12 +6021,12 @@ static void HSETDEFAULTLIBPATHS( void )
+
+ static void FBCADDDEFLIB( uint8* LIBNAME$1 )
+ {
+- FBSTRING TMP$526$1;
++ FBSTRING TMP$529$1;
+ label$1050:;
+- __builtin_memset( &TMP$526$1, 0, 24ll );
+- FBSTRING* vr$2 = fb_StrAssign( (void*)&TMP$526$1, -1ll, (void*)LIBNAME$1, 0ll, 0 );
+- STRSETADD( (struct $7TSTRSET*)((uint8*)&FBC$ + 680ll), &TMP$526$1, -1ll );
+- fb_StrDelete( &TMP$526$1 );
++ __builtin_memset( &TMP$529$1, 0, 24ll );
++ FBSTRING* vr$2 = fb_StrAssign( (void*)&TMP$529$1, -1ll, (void*)LIBNAME$1, 0ll, 0 );
++ STRSETADD( (struct $7TSTRSET*)((uint8*)&FBC$ + 680ll), &TMP$529$1, -1ll );
++ fb_StrDelete( &TMP$529$1 );
+ label$1051:;
+ }
+
+@@ -6051,32 +6060,32 @@ static FBSTRING* HGETFBLIBNAMESUFFIX( void )
+
+ static void HADDDEFAULTLIBS( void )
+ {
+- FBSTRING TMP$527$1;
+- FBSTRING TMP$528$1;
++ FBSTRING TMP$530$1;
++ FBSTRING TMP$531$1;
+ label$1058:;
+- __builtin_memset( &TMP$528$1, 0, 24ll );
++ __builtin_memset( &TMP$531$1, 0, 24ll );
+ FBSTRING* vr$1 = HGETFBLIBNAMESUFFIX( );
+- __builtin_memset( &TMP$527$1, 0, 24ll );
+- FBSTRING* vr$4 = fb_StrConcat( &TMP$527$1, (void*)"fb", 3ll, (void*)vr$1, -1ll );
+- FBSTRING* vr$6 = fb_StrAssign( (void*)&TMP$528$1, -1ll, (void*)vr$4, -1ll, 0 );
+- FBCADDDEFLIB( *(uint8**)&TMP$528$1 );
+- fb_StrDelete( &TMP$528$1 );
++ __builtin_memset( &TMP$530$1, 0, 24ll );
++ FBSTRING* vr$4 = fb_StrConcat( &TMP$530$1, (void*)"fb", 3ll, (void*)vr$1, -1ll );
++ FBSTRING* vr$6 = fb_StrAssign( (void*)&TMP$531$1, -1ll, (void*)vr$4, -1ll, 0 );
++ FBCADDDEFLIB( *(uint8**)&TMP$531$1 );
++ fb_StrDelete( &TMP$531$1 );
+ int64 vr$8 = FBGETOPTION( 26ll );
+ if( vr$8 == 0ll ) goto label$1061;
+ {
+- FBSTRING TMP$530$2;
+- FBSTRING TMP$531$2;
+- __builtin_memset( &TMP$531$2, 0, 24ll );
++ FBSTRING TMP$533$2;
++ FBSTRING TMP$534$2;
++ __builtin_memset( &TMP$534$2, 0, 24ll );
+ FBSTRING* vr$10 = HGETFBLIBNAMESUFFIX( );
+- __builtin_memset( &TMP$530$2, 0, 24ll );
+- FBSTRING* vr$13 = fb_StrConcat( &TMP$530$2, (void*)"fbgfx", 6ll, (void*)vr$10, -1ll );
+- FBSTRING* vr$15 = fb_StrAssign( (void*)&TMP$531$2, -1ll, (void*)vr$13, -1ll, 0 );
+- FBCADDDEFLIB( *(uint8**)&TMP$531$2 );
+- fb_StrDelete( &TMP$531$2 );
++ __builtin_memset( &TMP$533$2, 0, 24ll );
++ FBSTRING* vr$13 = fb_StrConcat( &TMP$533$2, (void*)"fbgfx", 6ll, (void*)vr$10, -1ll );
++ FBSTRING* vr$15 = fb_StrAssign( (void*)&TMP$534$2, -1ll, (void*)vr$13, -1ll, 0 );
++ FBCADDDEFLIB( *(uint8**)&TMP$534$2 );
++ fb_StrDelete( &TMP$534$2 );
+ {
+- uint64 TMP$532$3;
++ uint64 TMP$535$3;
+ int64 vr$17 = FBGETOPTION( 3ll );
+- TMP$532$3 = (uint64)vr$17;
++ TMP$535$3 = (uint64)vr$17;
+ goto label$1063;
+ label$1064:;
+ {
+@@ -6086,11 +6095,11 @@ static void HADDDEFAULTLIBS( void )
+ goto label$1062;
+ label$1065:;
+ {
+- FBSTRING TMP$536$4;
+- __builtin_memset( &TMP$536$4, 0, 24ll );
+- FBSTRING* vr$20 = fb_StrAssign( (void*)&TMP$536$4, -1ll, (void*)"/usr/X11R6/lib", 15ll, 0 );
+- FBCADDDEFLIBPATH( &TMP$536$4 );
+- fb_StrDelete( &TMP$536$4 );
++ FBSTRING TMP$539$4;
++ __builtin_memset( &TMP$539$4, 0, 24ll );
++ FBSTRING* vr$20 = fb_StrAssign( (void*)&TMP$539$4, -1ll, (void*)"/usr/X11R6/lib", 15ll, 0 );
++ FBCADDDEFLIBPATH( &TMP$539$4 );
++ fb_StrDelete( &TMP$539$4 );
+ FBCADDDEFLIB( (uint8*)"X11" );
+ FBCADDDEFLIB( (uint8*)"Xext" );
+ FBCADDDEFLIB( (uint8*)"Xpm" );
+@@ -6099,7 +6108,7 @@ static void HADDDEFAULTLIBS( void )
+ }
+ goto label$1062;
+ label$1063:;
+- static const void* tmp$664[9ll] = {
++ static const void* tmp$667[9ll] = {
+ &&label$1064,
+ &&label$1064,
+ &&label$1065,
+@@ -6110,17 +6119,17 @@ static void HADDDEFAULTLIBS( void )
+ &&label$1065,
+ &&label$1065,
+ };
+- if( TMP$532$3 > 8ull ) goto label$1062;
+- goto *tmp$664[TMP$532$3 - 0ull];
++ if( TMP$535$3 > 8ull ) goto label$1062;
++ goto *tmp$667[TMP$535$3 - 0ull];
+ label$1062:;
+ }
+ }
+ label$1061:;
+ label$1060:;
+ {
+- uint64 TMP$542$2;
++ uint64 TMP$545$2;
+ int64 vr$23 = FBGETOPTION( 3ll );
+- TMP$542$2 = (uint64)vr$23;
++ TMP$545$2 = (uint64)vr$23;
+ goto label$1067;
+ label$1068:;
+ {
+@@ -6263,7 +6272,7 @@ static void HADDDEFAULTLIBS( void )
+ }
+ goto label$1066;
+ label$1067:;
+- static const void* tmp$665[9ll] = {
++ static const void* tmp$668[9ll] = {
+ &&label$1083,
+ &&label$1068,
+ &&label$1076,
+@@ -6274,8 +6283,8 @@ static void HADDDEFAULTLIBS( void )
+ &&label$1071,
+ &&label$1081,
+ };
+- if( TMP$542$2 > 8ull ) goto label$1066;
+- goto *tmp$665[TMP$542$2 - 0ull];
++ if( TMP$545$2 > 8ull ) goto label$1066;
++ goto *tmp$668[TMP$545$2 - 0ull];
+ label$1066:;
+ }
+ label$1059:;
+@@ -6423,24 +6432,24 @@ static void HPRINTOPTIONS( void )
+
+ static void HPRINTVERSION( void )
+ {
+- FBSTRING TMP$642$1;
+- FBSTRING TMP$643$1;
+- FBSTRING TMP$644$1;
+ FBSTRING TMP$645$1;
++ FBSTRING TMP$646$1;
++ FBSTRING TMP$647$1;
++ FBSTRING TMP$648$1;
+ label$1097:;
+ FBSTRING CONFIG$1;
+ __builtin_memset( &CONFIG$1, 0, 24ll );
+ int64 vr$1 = FBGETHOSTBITS( );
+ FBSTRING* vr$2 = fb_LongintToStr( vr$1 );
+ FBSTRING* vr$3 = FBGETHOSTID( );
+- __builtin_memset( &TMP$642$1, 0, 24ll );
+- FBSTRING* vr$6 = fb_StrConcat( &TMP$642$1, (void*)"FreeBASIC Compiler - Version 1.06.0 (02-17-2019), built for ", 61ll, (void*)vr$3, -1ll );
+- __builtin_memset( &TMP$643$1, 0, 24ll );
+- FBSTRING* vr$9 = fb_StrConcat( &TMP$643$1, (void*)vr$6, -1ll, (void*)" (", 3ll );
+- __builtin_memset( &TMP$644$1, 0, 24ll );
+- FBSTRING* vr$12 = fb_StrConcat( &TMP$644$1, (void*)vr$9, -1ll, (void*)vr$2, -1ll );
+ __builtin_memset( &TMP$645$1, 0, 24ll );
+- FBSTRING* vr$15 = fb_StrConcat( &TMP$645$1, (void*)vr$12, -1ll, (void*)"bit)", 5ll );
++ FBSTRING* vr$6 = fb_StrConcat( &TMP$645$1, (void*)"FreeBASIC Compiler - Version 1.06.0 (04-21-2019), built for ", 61ll, (void*)vr$3, -1ll );
++ __builtin_memset( &TMP$646$1, 0, 24ll );
++ FBSTRING* vr$9 = fb_StrConcat( &TMP$646$1, (void*)vr$6, -1ll, (void*)" (", 3ll );
++ __builtin_memset( &TMP$647$1, 0, 24ll );
++ FBSTRING* vr$12 = fb_StrConcat( &TMP$647$1, (void*)vr$9, -1ll, (void*)vr$2, -1ll );
++ __builtin_memset( &TMP$648$1, 0, 24ll );
++ FBSTRING* vr$15 = fb_StrConcat( &TMP$648$1, (void*)vr$12, -1ll, (void*)"bit)", 5ll );
+ fb_PrintString( 0, vr$15, 1 );
+ FBSTRING* vr$16 = fb_StrAllocTempDescZEx( (uint8*)"Copyright (C) 2004-2019 The FreeBASIC development team.", 55ll );
+ fb_PrintString( 0, vr$16, 1 );
diff --git a/dev-lang/fbc/files/1.06.0/bootstrap/0004-bootstrap-dist-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch b/dev-lang/fbc/files/1.06.0/bootstrap/0004-bootstrap-dist-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch
new file mode 100644
index 000000000..733d6246c
--- /dev/null
+++ b/dev-lang/fbc/files/1.06.0/bootstrap/0004-bootstrap-dist-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch
@@ -0,0 +1,7124 @@
+diff --git a/../FreeBASIC-1.06.0-source-bootstrap/bootstrap/linux-x86/fbc.asm b/bootstrap/linux-x86/fbc.asm
+index 2136701..bb6441f 100644
+--- a/../FreeBASIC-1.06.0-source-bootstrap/bootstrap/linux-x86/fbc.asm
++++ b/bootstrap/linux-x86/fbc.asm
+@@ -41,49 +41,49 @@ add esp, 16
+ .Lt_0002:
+ call FBCINIT
+ cmp dword ptr [ebp+8], 1
+-jne .Lt_06E8
++jne .Lt_06EB
+ call HPRINTOPTIONS
+ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_06E8:
+-.Lt_06E7:
++.Lt_06EB:
++.Lt_06EA:
+ sub esp, 8
+ push dword ptr [ebp+12]
+ push dword ptr [ebp+8]
+ call HPARSEARGS
+ add esp, 16
+ cmp dword ptr [FBC+60], 0
+-je .Lt_06EA
++je .Lt_06ED
+ call HPRINTVERSION
+ sub esp, 12
+ push 0
+ call FBCEND
+ add esp, 16
+-.Lt_06EA:
+-.Lt_06E9:
++.Lt_06ED:
++.Lt_06EC:
+ cmp dword ptr [FBC+56], 0
+-je .Lt_06EC
++je .Lt_06EF
+ call HPRINTVERSION
+-.Lt_06EC:
+-.Lt_06EB:
++.Lt_06EF:
++.Lt_06EE:
+ cmp dword ptr [FBC+64], 0
+-je .Lt_06EE
++je .Lt_06F1
+ call HPRINTOPTIONS
+ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_06EE:
+-.Lt_06ED:
++.Lt_06F1:
++.Lt_06F0:
+ call FBCDETERMINEPREFIX
+ call FBCSETUPCOMPILERPATHS
+ cmp dword ptr [FBC+56], 0
+-je .Lt_06F0
++je .Lt_06F3
+ call FBCPRINTTARGETINFO
+-.Lt_06F0:
+-.Lt_06EF:
++.Lt_06F3:
++.Lt_06F2:
+ sub esp, 12
+ mov dword ptr [ebp-16], 0
+ mov dword ptr [ebp-12], 0
+@@ -147,12 +147,12 @@ sbb ecx, ecx
+ or ebx, ecx
+ mov dword ptr [ebp-20], ebx
+ cmp dword ptr [FBC+68], 0
+-jl .Lt_06F3
++jl .Lt_06F6
+ mov ebx, dword ptr [FBC+68]
+ mov dword ptr [ebp-24], ebx
+ cmp dword ptr [ebp-24], 0
+-jne .Lt_06F6
+-.Lt_06F7:
++jne .Lt_06F9
++.Lt_06FA:
+ sub esp, 4
+ push 1
+ sub esp, 8
+@@ -162,11 +162,11 @@ push eax
+ push 0
+ call fb_PrintString
+ add esp, 16
+-jmp .Lt_06F4
+-.Lt_06F6:
+-cmp dword ptr [ebp-24], 1
+-jne .Lt_06F8
++jmp .Lt_06F7
+ .Lt_06F9:
++cmp dword ptr [ebp-24], 1
++jne .Lt_06FB
++.Lt_06FC:
+ sub esp, 4
+ push 1
+ sub esp, 8
+@@ -176,16 +176,16 @@ push eax
+ push 0
+ call fb_PrintString
+ add esp, 16
+-jmp .Lt_06F4
+-.Lt_06F8:
+-cmp dword ptr [ebp-24], 2
+-jne .Lt_06FA
++jmp .Lt_06F7
+ .Lt_06FB:
++cmp dword ptr [ebp-24], 2
++jne .Lt_06FD
++.Lt_06FE:
+ cmp dword ptr [ebp-20], 0
+-je .Lt_06FD
++je .Lt_0700
+ call FBCDETERMINEMAINNAME
+-.Lt_06FD:
+-.Lt_06FC:
++.Lt_0700:
++.Lt_06FF:
+ call HSETOUTNAME
+ sub esp, 4
+ push 1
+@@ -198,11 +198,11 @@ push eax
+ push 0
+ call fb_PrintString
+ add esp, 16
+-jmp .Lt_06F4
+-.Lt_06FA:
++jmp .Lt_06F7
++.Lt_06FD:
+ cmp dword ptr [ebp-24], 3
+-jne .Lt_06FE
+-.Lt_06FF:
++jne .Lt_0701
++.Lt_0702:
+ sub esp, 4
+ push 1
+ sub esp, 4
+@@ -214,59 +214,59 @@ push eax
+ push 0
+ call fb_PrintString
+ add esp, 16
+-.Lt_06FE:
+-.Lt_06F4:
++.Lt_0701:
++.Lt_06F7:
+ sub esp, 12
+ push 0
+ call FBCEND
+ add esp, 16
+-.Lt_06F3:
+-.Lt_06F2:
++.Lt_06F6:
++.Lt_06F5:
+ call FBCDETERMINEMAINNAME
+ cmp dword ptr [ebp-20], 0
+-jne .Lt_0701
++jne .Lt_0704
+ call HPRINTOPTIONS
+ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_0701:
+-.Lt_0700:
++.Lt_0704:
++.Lt_0703:
+ call HCOMPILEMODULES
+ call HCOMPILEXPM
+ test eax, eax
+-jne .Lt_0703
++jne .Lt_0706
+ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_0703:
+-.Lt_0702:
++.Lt_0706:
++.Lt_0705:
+ cmp dword ptr [FBC+36], 0
+-je .Lt_0705
++je .Lt_0708
+ sub esp, 12
+ push 0
+ call FBCEND
+ add esp, 16
+-.Lt_0705:
+-.Lt_0704:
++.Lt_0708:
++.Lt_0707:
+ sub esp, 12
+ push 2
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_0707
++je .Lt_070A
+ call HCOMPILESTAGE2MODULES
+-.Lt_0707:
+-.Lt_0706:
++.Lt_070A:
++.Lt_0709:
+ cmp dword ptr [FBC+44], 0
+-je .Lt_0709
++je .Lt_070C
+ sub esp, 12
+ push 0
+ call FBCEND
+ add esp, 16
+-.Lt_0709:
+-.Lt_0708:
++.Lt_070C:
++.Lt_070B:
+ call HASSEMBLEMODULES
+ call HASSEMBLERCS
+ call HASSEMBLEXPM
+@@ -275,13 +275,13 @@ push 0
+ call FBGETOPTION
+ add esp, 16
+ cmp eax, 3
+-jne .Lt_070B
++jne .Lt_070E
+ sub esp, 12
+ push 0
+ call FBCEND
+ add esp, 16
+-.Lt_070B:
+-.Lt_070A:
++.Lt_070E:
++.Lt_070D:
+ call HSETDEFAULTLIBPATHS
+ sub esp, 12
+ push 29
+@@ -291,45 +291,45 @@ mov ebx, eax
+ call FBISCROSSCOMP
+ not eax
+ and ebx, eax
+-je .Lt_070D
++je .Lt_0710
+ call HCOLLECTOBJINFO
+-.Lt_070D:
+-.Lt_070C:
++.Lt_0710:
++.Lt_070F:
+ sub esp, 12
+ push 0
+ call FBGETOPTION
+ add esp, 16
+ cmp eax, 1
+-jne .Lt_070F
++jne .Lt_0712
+ call HARCHIVEFILES
+ test eax, eax
+-jne .Lt_0711
++jne .Lt_0714
+ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_0711:
+-.Lt_0710:
++.Lt_0714:
++.Lt_0713:
+ sub esp, 12
+ push 0
+ call FBCEND
+ add esp, 16
+-.Lt_070F:
+-.Lt_070E:
++.Lt_0712:
++.Lt_0711:
+ cmp dword ptr [FBC+2120], 0
+-jne .Lt_0713
++jne .Lt_0716
+ call HADDDEFAULTLIBS
+-.Lt_0713:
+-.Lt_0712:
++.Lt_0716:
++.Lt_0715:
+ call HLINKFILES
+ test eax, eax
+-jne .Lt_0715
++jne .Lt_0718
+ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_0715:
+-.Lt_0714:
++.Lt_0718:
++.Lt_0717:
+ sub esp, 12
+ push 0
+ call FBCEND
+@@ -2210,18 +2210,18 @@ sub esp, 52
+ push ebx
+ .Lt_00A2:
+ mov eax, dword ptr [ebp+8]
+-cmp dword ptr [Lt_0720], eax
++cmp dword ptr [Lt_0723], eax
+ jne .Lt_00A5
+ sub esp, 12
+ push 0
+ push -1
+-push offset Lt_0721
++push offset Lt_0724
+ push -1
+ push dword ptr [ebp+12]
+ call fb_StrAssign
+ add esp, 32
+ mov eax, dword ptr [ebp+16]
+-mov ebx, dword ptr [Lt_0722]
++mov ebx, dword ptr [Lt_0725]
+ mov dword ptr [eax], ebx
+ jmp .Lt_00A3
+ .Lt_00A5:
+@@ -2341,18 +2341,18 @@ mov dword ptr [eax], -1
+ .Lt_00A7:
+ .Lt_00A6:
+ mov eax, dword ptr [ebp+8]
+-mov dword ptr [Lt_0720], eax
++mov dword ptr [Lt_0723], eax
+ sub esp, 12
+ push 0
+ push -1
+ push dword ptr [ebp+12]
+ push -1
+-push offset Lt_0721
++push offset Lt_0724
+ call fb_StrAssign
+ add esp, 32
+ mov eax, dword ptr [ebp+16]
+ mov ebx, dword ptr [eax]
+-mov dword ptr [Lt_0722], ebx
++mov dword ptr [Lt_0725], ebx
+ .Lt_00A3:
+ pop ebx
+ mov esp, ebp
+@@ -2362,14 +2362,14 @@ ret
+
+ .section .data
+ .balign 4
+-Lt_0720:
++Lt_0723:
+ .int -1
+
+ .section .bss
+ .balign 4
+- .lcomm Lt_0722,4
++ .lcomm Lt_0725,4
+ .balign 4
+- .lcomm Lt_0721,12
++ .lcomm Lt_0724,12
+
+ .section .text
+ .balign 16
+@@ -2848,7 +2848,7 @@ cmp edx, 0
+ jne .Lt_00DF
+ cmp eax, 0
+ jne .Lt_00DF
+-.Lt_0724:
++.Lt_0727:
+ sub esp, 12
+ push dword ptr [ebp+12]
+ call HGENERATEEMPTYDEFFILE
+@@ -4819,10 +4819,10 @@ setne al
+ shr eax, 1
+ sbb eax, eax
+ mov dword ptr [ebp-52], eax
+-jmp .Lt_0726
++jmp .Lt_0729
+ .Lt_01CE:
+ mov dword ptr [ebp-52], -1
+-.Lt_0726:
++.Lt_0729:
+ cmp dword ptr [ebp-52], 0
+ je .Lt_01D1
+ sub esp, 12
+@@ -6324,7 +6324,7 @@ HANDLEOPT:
+ .type HANDLEOPT, @function
+ push ebp
+ mov ebp, esp
+-sub esp, 36
++sub esp, 52
+ push ebx
+ .Lt_028C:
+ mov eax, dword ptr [ebp+8]
+@@ -7603,6 +7603,8 @@ sub esp, 12
+ push 0
+ push -1
+ sub esp, 8
++push -1
++sub esp, 12
+ push 2
+ push offset Lt_00B4
+ push -1
+@@ -7632,6 +7634,17 @@ mov dword ptr [ebp-20], 0
+ lea eax, [ebp-28]
+ push eax
+ call fb_StrConcat
++add esp, 32
++push eax
++push 128
++lea eax, [FBC+1346]
++push eax
++mov dword ptr [ebp-40], 0
++mov dword ptr [ebp-36], 0
++mov dword ptr [ebp-32], 0
++lea eax, [ebp-40]
++push eax
++call fb_StrConcat
+ add esp, 28
+ push eax
+ push 128
+@@ -7640,11 +7653,13 @@ push eax
+ call fb_StrAssign
+ add esp, 32
+ jmp .Lt_028E
+-.Lt_034F:
++.Lt_0350:
+ sub esp, 12
+ push 0
+ push -1
+ sub esp, 8
++push -1
++sub esp, 12
+ push 2
+ push offset Lt_00B4
+ push -1
+@@ -7674,6 +7689,17 @@ mov dword ptr [ebp-20], 0
+ lea eax, [ebp-28]
+ push eax
+ call fb_StrConcat
++add esp, 32
++push eax
++push 128
++lea eax, [FBC+1602]
++push eax
++mov dword ptr [ebp-40], 0
++mov dword ptr [ebp-36], 0
++mov dword ptr [ebp-32], 0
++lea eax, [ebp-40]
++push eax
++call fb_StrConcat
+ add esp, 28
+ push eax
+ push 128
+@@ -7682,11 +7708,13 @@ push eax
+ call fb_StrAssign
+ add esp, 32
+ jmp .Lt_028E
+-.Lt_0352:
++.Lt_0354:
+ sub esp, 12
+ push 0
+ push -1
+ sub esp, 8
++push -1
++sub esp, 12
+ push 2
+ push offset Lt_00B4
+ push -1
+@@ -7716,6 +7744,17 @@ mov dword ptr [ebp-20], 0
+ lea eax, [ebp-28]
+ push eax
+ call fb_StrConcat
++add esp, 32
++push eax
++push 128
++lea eax, [FBC+1474]
++push eax
++mov dword ptr [ebp-40], 0
++mov dword ptr [ebp-36], 0
++mov dword ptr [ebp-32], 0
++lea eax, [ebp-40]
++push eax
++call fb_StrConcat
+ add esp, 28
+ push eax
+ push 128
+@@ -7724,7 +7763,7 @@ push eax
+ call fb_StrAssign
+ add esp, 32
+ jmp .Lt_028E
+-.Lt_0355:
++.Lt_0358:
+ sub esp, 12
+ push 0
+ push -1
+@@ -7735,7 +7774,7 @@ push eax
+ call fb_StrAssign
+ add esp, 32
+ jmp .Lt_028E
+-.Lt_0356:
++.Lt_0359:
+ sub esp, 12
+ push 0
+ push -1
+@@ -7751,28 +7790,28 @@ push eax
+ call fb_StrInit
+ add esp, 32
+ push 13
+-push offset Lt_035A
++push offset Lt_035D
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0359
+-.Lt_035B:
++jne .Lt_035C
++.Lt_035E:
+ sub esp, 8
+ push -1
+ push 22
+ call FBSETOPTION
+ add esp, 16
+-jmp .Lt_0357
+-.Lt_0359:
++jmp .Lt_035A
++.Lt_035C:
+ sub esp, 12
+ push dword ptr [ebp+12]
+ call HFATALINVALIDOPTION
+ add esp, 16
+-.Lt_035C:
+-.Lt_0357:
++.Lt_035F:
++.Lt_035A:
+ sub esp, 12
+ lea eax, [ebp-16]
+ push eax
+@@ -7783,8 +7822,8 @@ jmp .Lt_028E
+ cmp dword ptr [ebp-4], 57
+ ja .Lt_028E
+ mov eax, dword ptr [ebp-4]
+-jmp dword ptr [.LT_035D+eax*4]
+-.LT_035D:
++jmp dword ptr [.LT_0360+eax*4]
++.LT_0360:
+ .int .Lt_0291
+ .int .Lt_0292
+ .int .Lt_0299
+@@ -7839,10 +7878,10 @@ jmp dword ptr [.LT_035D+eax*4]
+ .int .Lt_0328
+ .int .Lt_0329
+ .int .Lt_034C
+-.int .Lt_034F
+-.int .Lt_0352
+-.int .Lt_0355
+-.int .Lt_0356
++.int .Lt_0350
++.int .Lt_0354
++.int .Lt_0358
++.int .Lt_0359
+ .Lt_028E:
+ .Lt_028D:
+ pop ebx
+@@ -7858,131 +7897,119 @@ mov ebp, esp
+ sub esp, 20
+ push ebx
+ mov dword ptr [ebp-4], 0
+-.Lt_035E:
++.Lt_0361:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax]
+ mov dword ptr [ebp-8], ebx
+-jmp .Lt_0361
+-.Lt_0363:
++jmp .Lt_0364
++.Lt_0366:
+ mov ebx, dword ptr [ebp+8]
+ movzx eax, byte ptr [ebx+1]
+ test eax, eax
+-jne .Lt_0366
++jne .Lt_0369
+ mov dword ptr [ebp-4], 0
+-jmp .Lt_035F
+-.Lt_0366:
+-.Lt_0365:
++jmp .Lt_0362
++.Lt_0369:
++.Lt_0368:
+ push 5
+-push offset Lt_0367
++push offset Lt_036A
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0369
++jne .Lt_036C
+ mov dword ptr [ebp-4], 1
+-jmp .Lt_035F
+-.Lt_0369:
+-.Lt_0368:
++jmp .Lt_0362
++.Lt_036C:
++.Lt_036B:
+ push 4
+-push offset Lt_036A
++push offset Lt_036D
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_036C
++jne .Lt_036F
+ mov dword ptr [ebp-4], 2
+-jmp .Lt_035F
+-.Lt_036C:
+-.Lt_036B:
+-jmp .Lt_0360
+-.Lt_036D:
++jmp .Lt_0362
++.Lt_036F:
++.Lt_036E:
++jmp .Lt_0363
++.Lt_0370:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_0370
++jne .Lt_0373
+ mov dword ptr [ebp-4], 3
+-jmp .Lt_035F
+-.Lt_0370:
+-.Lt_036F:
+-jmp .Lt_0360
+-.Lt_0371:
++jmp .Lt_0362
++.Lt_0373:
++.Lt_0372:
++jmp .Lt_0363
++.Lt_0374:
+ mov ebx, dword ptr [ebp+8]
+ movzx eax, byte ptr [ebx+1]
+ test eax, eax
+-jne .Lt_0374
++jne .Lt_0377
+ mov dword ptr [ebp-4], 4
+-jmp .Lt_035F
+-.Lt_0374:
+-.Lt_0373:
+-jmp .Lt_0360
+-.Lt_0375:
++jmp .Lt_0362
++.Lt_0377:
++.Lt_0376:
++jmp .Lt_0363
++.Lt_0378:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_0378
++jne .Lt_037B
+ mov dword ptr [ebp-4], 5
+-jmp .Lt_035F
+-.Lt_0378:
+-.Lt_0377:
+-jmp .Lt_0360
+-.Lt_0379:
++jmp .Lt_0362
++.Lt_037B:
++.Lt_037A:
++jmp .Lt_0363
++.Lt_037C:
+ mov ebx, dword ptr [ebp+8]
+ movzx eax, byte ptr [ebx+1]
+ test eax, eax
+-jne .Lt_037C
++jne .Lt_037F
+ mov dword ptr [ebp-4], 6
+-jmp .Lt_035F
+-.Lt_037C:
+-.Lt_037B:
++jmp .Lt_0362
++.Lt_037F:
++.Lt_037E:
+ push 4
+-push offset Lt_037D
++push offset Lt_0380
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_037F
++jne .Lt_0382
+ mov dword ptr [ebp-4], 7
+-jmp .Lt_035F
+-.Lt_037F:
+-.Lt_037E:
++jmp .Lt_0362
++.Lt_0382:
++.Lt_0381:
+ push 6
+-push offset Lt_0380
++push offset Lt_0383
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0382
++jne .Lt_0385
+ mov dword ptr [ebp-4], 8
+-jmp .Lt_035F
+-.Lt_0382:
+-.Lt_0381:
+-jmp .Lt_0360
+-.Lt_0383:
++jmp .Lt_0362
++.Lt_0385:
++.Lt_0384:
++jmp .Lt_0363
++.Lt_0386:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_0386
+-mov dword ptr [ebp-4], 9
+-jmp .Lt_035F
+-.Lt_0386:
+-.Lt_0385:
+-push 3
+-push offset Lt_0387
+-push 0
+-push dword ptr [ebp+8]
+-call fb_StrCompare
+-add esp, 16
+-test eax, eax
+ jne .Lt_0389
+-mov dword ptr [ebp-4], 10
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 9
++jmp .Lt_0362
+ .Lt_0389:
+ .Lt_0388:
+-push 4
++push 3
+ push offset Lt_038A
+ push 0
+ push dword ptr [ebp+8]
+@@ -7990,11 +8017,11 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_038C
+-mov dword ptr [ebp-4], 11
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 10
++jmp .Lt_0362
+ .Lt_038C:
+ .Lt_038B:
+-push 7
++push 4
+ push offset Lt_038D
+ push 0
+ push dword ptr [ebp+8]
+@@ -8002,25 +8029,25 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_038F
+-mov dword ptr [ebp-4], 12
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 11
++jmp .Lt_0362
+ .Lt_038F:
+ .Lt_038E:
+-jmp .Lt_0360
+-.Lt_0390:
+-push 10
+-push offset Lt_0392
++push 7
++push offset Lt_0390
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0394
+-mov dword ptr [ebp-4], 13
+-jmp .Lt_035F
+-.Lt_0394:
++jne .Lt_0392
++mov dword ptr [ebp-4], 12
++jmp .Lt_0362
++.Lt_0392:
++.Lt_0391:
++jmp .Lt_0363
+ .Lt_0393:
+-push 7
++push 10
+ push offset Lt_0395
+ push 0
+ push dword ptr [ebp+8]
+@@ -8028,11 +8055,11 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_0397
+-mov dword ptr [ebp-4], 14
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 13
++jmp .Lt_0362
+ .Lt_0397:
+ .Lt_0396:
+-push 4
++push 7
+ push offset Lt_0398
+ push 0
+ push dword ptr [ebp+8]
+@@ -8040,125 +8067,125 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_039A
+-mov dword ptr [ebp-4], 15
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 14
++jmp .Lt_0362
+ .Lt_039A:
+ .Lt_0399:
+-jmp .Lt_0360
+-.Lt_039B:
++push 4
++push offset Lt_039B
++push 0
++push dword ptr [ebp+8]
++call fb_StrCompare
++add esp, 16
++test eax, eax
++jne .Lt_039D
++mov dword ptr [ebp-4], 15
++jmp .Lt_0362
++.Lt_039D:
++.Lt_039C:
++jmp .Lt_0363
++.Lt_039E:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_039E
++jne .Lt_03A1
+ mov dword ptr [ebp-4], 16
+-jmp .Lt_035F
+-.Lt_039E:
+-.Lt_039D:
++jmp .Lt_0362
++.Lt_03A1:
++.Lt_03A0:
+ push 4
+-push offset Lt_039F
++push offset Lt_03A2
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_03A1
++jne .Lt_03A4
+ mov dword ptr [ebp-4], 17
+-jmp .Lt_035F
+-.Lt_03A1:
+-.Lt_03A0:
+-jmp .Lt_0360
+-.Lt_03A2:
++jmp .Lt_0362
++.Lt_03A4:
++.Lt_03A3:
++jmp .Lt_0363
++.Lt_03A5:
+ push 5
+-push offset Lt_03A4
++push offset Lt_03A7
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_03A6
++jne .Lt_03A9
+ mov dword ptr [ebp-4], 18
+-jmp .Lt_035F
+-.Lt_03A6:
+-.Lt_03A5:
+-jmp .Lt_0360
+-.Lt_03A7:
++jmp .Lt_0362
++.Lt_03A9:
++.Lt_03A8:
++jmp .Lt_0363
++.Lt_03AA:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_03AA
++jne .Lt_03AD
+ mov dword ptr [ebp-4], 19
+-jmp .Lt_035F
+-.Lt_03AA:
+-.Lt_03A9:
++jmp .Lt_0362
++.Lt_03AD:
++.Lt_03AC:
+ push 8
+-push offset Lt_03AB
++push offset Lt_03AE
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_03AD
++jne .Lt_03B0
+ mov dword ptr [ebp-4], 20
+-jmp .Lt_035F
+-.Lt_03AD:
+-.Lt_03AC:
+-jmp .Lt_0360
+-.Lt_03AE:
++jmp .Lt_0362
++.Lt_03B0:
++.Lt_03AF:
++jmp .Lt_0363
++.Lt_03B1:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_03B1
++jne .Lt_03B4
+ mov dword ptr [ebp-4], 21
+-jmp .Lt_035F
+-.Lt_03B1:
+-.Lt_03B0:
++jmp .Lt_0362
++.Lt_03B4:
++.Lt_03B3:
+ push 5
+-push offset Lt_03B2
++push offset Lt_03B5
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_03B4
++jne .Lt_03B7
+ mov dword ptr [ebp-4], 22
+-jmp .Lt_035F
+-.Lt_03B4:
+-.Lt_03B3:
+-push 4
++jmp .Lt_0362
++.Lt_03B7:
++.Lt_03B6:
++push 4
+ push offset Lt_0046
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_03B6
++jne .Lt_03B9
+ mov dword ptr [ebp-4], 23
+-jmp .Lt_035F
+-.Lt_03B6:
+-.Lt_03B5:
+-jmp .Lt_0360
+-.Lt_03B7:
++jmp .Lt_0362
++.Lt_03B9:
++.Lt_03B8:
++jmp .Lt_0363
++.Lt_03BA:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_03BA
+-mov dword ptr [ebp-4], 24
+-jmp .Lt_035F
+-.Lt_03BA:
+-.Lt_03B9:
+-push 4
+-push offset Lt_03BB
+-push 0
+-push dword ptr [ebp+8]
+-call fb_StrCompare
+-add esp, 16
+-test eax, eax
+ jne .Lt_03BD
+-mov dword ptr [ebp-4], 25
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 24
++jmp .Lt_0362
+ .Lt_03BD:
+ .Lt_03BC:
+-push 7
++push 4
+ push offset Lt_03BE
+ push 0
+ push dword ptr [ebp+8]
+@@ -8166,11 +8193,11 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_03C0
+-mov dword ptr [ebp-4], 26
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 25
++jmp .Lt_0362
+ .Lt_03C0:
+ .Lt_03BF:
+-push 3
++push 7
+ push offset Lt_03C1
+ push 0
+ push dword ptr [ebp+8]
+@@ -8178,23 +8205,23 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_03C3
+-mov dword ptr [ebp-4], 27
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 26
++jmp .Lt_0362
+ .Lt_03C3:
+ .Lt_03C2:
+-jmp .Lt_0360
+-.Lt_03C4:
+-push 10
+-push offset Lt_03C6
++push 3
++push offset Lt_03C4
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_03C8
+-mov dword ptr [ebp-4], 29
+-jmp .Lt_035F
+-.Lt_03C8:
++jne .Lt_03C6
++mov dword ptr [ebp-4], 27
++jmp .Lt_0362
++.Lt_03C6:
++.Lt_03C5:
++jmp .Lt_0363
+ .Lt_03C7:
+ push 10
+ push offset Lt_03C9
+@@ -8204,8 +8231,8 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_03CB
+-mov dword ptr [ebp-4], 28
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 29
++jmp .Lt_0362
+ .Lt_03CB:
+ .Lt_03CA:
+ push 10
+@@ -8216,53 +8243,53 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_03CE
+-mov dword ptr [ebp-4], 30
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 28
++jmp .Lt_0362
+ .Lt_03CE:
+ .Lt_03CD:
+-jmp .Lt_0360
+-.Lt_03CF:
++push 10
++push offset Lt_03CF
++push 0
++push dword ptr [ebp+8]
++call fb_StrCompare
++add esp, 16
++test eax, eax
++jne .Lt_03D1
++mov dword ptr [ebp-4], 30
++jmp .Lt_0362
++.Lt_03D1:
++.Lt_03D0:
++jmp .Lt_0363
++.Lt_03D2:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_03D2
++jne .Lt_03D5
+ mov dword ptr [ebp-4], 31
+-jmp .Lt_035F
+-.Lt_03D2:
+-.Lt_03D1:
+-jmp .Lt_0360
+-.Lt_03D3:
++jmp .Lt_0362
++.Lt_03D5:
++.Lt_03D4:
++jmp .Lt_0363
++.Lt_03D6:
+ mov ebx, dword ptr [ebp+8]
+ movzx eax, byte ptr [ebx+1]
+ test eax, eax
+-jne .Lt_03D6
++jne .Lt_03D9
+ mov dword ptr [ebp-4], 32
+-jmp .Lt_035F
+-.Lt_03D6:
+-.Lt_03D5:
+-jmp .Lt_0360
+-.Lt_03D7:
++jmp .Lt_0362
++.Lt_03D9:
++.Lt_03D8:
++jmp .Lt_0363
++.Lt_03DA:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_03DA
+-mov dword ptr [ebp-4], 33
+-jmp .Lt_035F
+-.Lt_03DA:
+-.Lt_03D9:
+-push 4
+-push offset Lt_03DB
+-push 0
+-push dword ptr [ebp+8]
+-call fb_StrCompare
+-add esp, 16
+-test eax, eax
+ jne .Lt_03DD
+-mov dword ptr [ebp-4], 34
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 33
++jmp .Lt_0362
+ .Lt_03DD:
+ .Lt_03DC:
+-push 3
++push 4
+ push offset Lt_03DE
+ push 0
+ push dword ptr [ebp+8]
+@@ -8270,11 +8297,11 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_03E0
+-mov dword ptr [ebp-4], 35
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 34
++jmp .Lt_0362
+ .Lt_03E0:
+ .Lt_03DF:
+-push 7
++push 3
+ push offset Lt_03E1
+ push 0
+ push dword ptr [ebp+8]
+@@ -8282,11 +8309,11 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_03E3
+-mov dword ptr [ebp-4], 36
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 35
++jmp .Lt_0362
+ .Lt_03E3:
+ .Lt_03E2:
+-push 6
++push 7
+ push offset Lt_03E4
+ push 0
+ push dword ptr [ebp+8]
+@@ -8294,11 +8321,11 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_03E6
+-mov dword ptr [ebp-4], 37
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 36
++jmp .Lt_0362
+ .Lt_03E6:
+ .Lt_03E5:
+-push 8
++push 6
+ push offset Lt_03E7
+ push 0
+ push dword ptr [ebp+8]
+@@ -8306,98 +8333,110 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_03E9
+-mov dword ptr [ebp-4], 38
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 37
++jmp .Lt_0362
+ .Lt_03E9:
+ .Lt_03E8:
+-jmp .Lt_0360
+-.Lt_03EA:
++push 8
++push offset Lt_03EA
++push 0
++push dword ptr [ebp+8]
++call fb_StrCompare
++add esp, 16
++test eax, eax
++jne .Lt_03EC
++mov dword ptr [ebp-4], 38
++jmp .Lt_0362
++.Lt_03EC:
++.Lt_03EB:
++jmp .Lt_0363
++.Lt_03ED:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_03ED
++jne .Lt_03F0
+ mov dword ptr [ebp-4], 39
+-jmp .Lt_035F
+-.Lt_03ED:
+-.Lt_03EC:
++jmp .Lt_0362
++.Lt_03F0:
++.Lt_03EF:
+ push 3
+-push offset Lt_03EE
++push offset Lt_03F1
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_03F0
++jne .Lt_03F3
+ mov dword ptr [ebp-4], 41
+-jmp .Lt_035F
+-.Lt_03F0:
+-.Lt_03EF:
+-jmp .Lt_0360
+-.Lt_03F1:
++jmp .Lt_0362
++.Lt_03F3:
++.Lt_03F2:
++jmp .Lt_0363
++.Lt_03F4:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_03F4
++jne .Lt_03F7
+ mov dword ptr [ebp-4], 40
+-jmp .Lt_035F
+-.Lt_03F4:
+-.Lt_03F3:
++jmp .Lt_0362
++.Lt_03F7:
++.Lt_03F6:
+ push 3
+-push offset Lt_03F5
++push offset Lt_03F8
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_03F7
++jne .Lt_03FA
+ mov dword ptr [ebp-4], 42
+-jmp .Lt_035F
+-.Lt_03F7:
+-.Lt_03F6:
+-jmp .Lt_0360
+-.Lt_03F8:
++jmp .Lt_0362
++.Lt_03FA:
++.Lt_03F9:
++jmp .Lt_0363
++.Lt_03FB:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_03FB
++jne .Lt_03FE
+ mov dword ptr [ebp-4], 43
+-jmp .Lt_035F
+-.Lt_03FB:
+-.Lt_03FA:
++jmp .Lt_0362
++.Lt_03FE:
++.Lt_03FD:
+ push 13
+-push offset Lt_03FC
++push offset Lt_03FF
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_03FE
++jne .Lt_0401
+ mov dword ptr [ebp-4], 44
+-jmp .Lt_035F
+-.Lt_03FE:
+-.Lt_03FD:
++jmp .Lt_0362
++.Lt_0401:
++.Lt_0400:
+ push 7
+-push offset Lt_03FF
++push offset Lt_0402
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0401
++jne .Lt_0404
+ mov dword ptr [ebp-4], 45
+-jmp .Lt_035F
+-.Lt_0401:
+-.Lt_0400:
+-jmp .Lt_0360
+-.Lt_0402:
++jmp .Lt_0362
++.Lt_0404:
++.Lt_0403:
++jmp .Lt_0363
++.Lt_0405:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_0405
++jne .Lt_0408
+ mov dword ptr [ebp-4], 46
+-jmp .Lt_035F
+-.Lt_0405:
+-.Lt_0404:
++jmp .Lt_0362
++.Lt_0408:
++.Lt_0407:
+ push 7
+ push offset Lt_02FD
+ push 0
+@@ -8405,80 +8444,68 @@ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0407
++jne .Lt_040A
+ mov dword ptr [ebp-4], 47
+-jmp .Lt_035F
+-.Lt_0407:
+-.Lt_0406:
++jmp .Lt_0362
++.Lt_040A:
++.Lt_0409:
+ push 6
+-push offset Lt_0408
++push offset Lt_040B
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_040A
++jne .Lt_040D
+ mov dword ptr [ebp-4], 48
+-jmp .Lt_035F
+-.Lt_040A:
+-.Lt_0409:
+-jmp .Lt_0360
+-.Lt_040B:
++jmp .Lt_0362
++.Lt_040D:
++.Lt_040C:
++jmp .Lt_0363
++.Lt_040E:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_040E
++jne .Lt_0411
+ mov dword ptr [ebp-4], 49
+-jmp .Lt_035F
+-.Lt_040E:
+-.Lt_040D:
++jmp .Lt_0362
++.Lt_0411:
++.Lt_0410:
+ push 4
+-push offset Lt_040F
++push offset Lt_0412
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0411
++jne .Lt_0414
+ mov dword ptr [ebp-4], 50
+-jmp .Lt_035F
+-.Lt_0411:
+-.Lt_0410:
++jmp .Lt_0362
++.Lt_0414:
++.Lt_0413:
+ push 8
+-push offset Lt_0412
++push offset Lt_0415
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0414
++jne .Lt_0417
+ mov dword ptr [ebp-4], 51
+-jmp .Lt_035F
+-.Lt_0414:
+-.Lt_0413:
+-jmp .Lt_0360
+-.Lt_0415:
++jmp .Lt_0362
++.Lt_0417:
++.Lt_0416:
++jmp .Lt_0363
++.Lt_0418:
+ mov eax, dword ptr [ebp+8]
+ movzx ebx, byte ptr [eax+1]
+ test ebx, ebx
+-jne .Lt_0418
++jne .Lt_041B
+ mov dword ptr [ebp-4], 52
+-jmp .Lt_035F
+-.Lt_0418:
+-.Lt_0417:
+-jmp .Lt_0360
+-.Lt_0419:
+-push 3
+-push offset Lt_041B
+-push 0
+-push dword ptr [ebp+8]
+-call fb_StrCompare
+-add esp, 16
+-test eax, eax
+-jne .Lt_041D
+-mov dword ptr [ebp-4], 53
+-jmp .Lt_035F
+-.Lt_041D:
++jmp .Lt_0362
++.Lt_041B:
++.Lt_041A:
++jmp .Lt_0363
+ .Lt_041C:
+ push 3
+ push offset Lt_041E
+@@ -8488,8 +8515,8 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_0420
+-mov dword ptr [ebp-4], 55
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 53
++jmp .Lt_0362
+ .Lt_0420:
+ .Lt_041F:
+ push 3
+@@ -8500,146 +8527,158 @@ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+ jne .Lt_0423
+-mov dword ptr [ebp-4], 54
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 55
++jmp .Lt_0362
+ .Lt_0423:
+ .Lt_0422:
+-jmp .Lt_0360
+-.Lt_0424:
+-mov eax, dword ptr [ebp+8]
+-movzx ebx, byte ptr [eax+1]
+-test ebx, ebx
++push 3
++push offset Lt_0424
++push 0
++push dword ptr [ebp+8]
++call fb_StrCompare
++add esp, 16
++test eax, eax
+ jne .Lt_0426
+-mov dword ptr [ebp-4], 56
+-jmp .Lt_035F
++mov dword ptr [ebp-4], 54
++jmp .Lt_0362
+ .Lt_0426:
+ .Lt_0425:
+-jmp .Lt_0360
++jmp .Lt_0363
+ .Lt_0427:
++mov eax, dword ptr [ebp+8]
++movzx ebx, byte ptr [eax+1]
++test ebx, ebx
++jne .Lt_0429
++mov dword ptr [ebp-4], 56
++jmp .Lt_0362
++.Lt_0429:
++.Lt_0428:
++jmp .Lt_0363
++.Lt_042A:
+ mov ebx, dword ptr [ebp+8]
+ movzx eax, byte ptr [ebx+1]
+ test eax, eax
+-jne .Lt_042A
++jne .Lt_042D
+ mov dword ptr [ebp-4], 57
+-jmp .Lt_035F
+-.Lt_042A:
+-.Lt_0429:
+-jmp .Lt_0360
+-.Lt_042B:
++jmp .Lt_0362
++.Lt_042D:
++.Lt_042C:
++jmp .Lt_0363
++.Lt_042E:
+ push 9
+-push offset Lt_042C
++push offset Lt_042F
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_042E
++jne .Lt_0431
+ mov dword ptr [ebp-4], 51
+-jmp .Lt_035F
+-.Lt_042E:
+-.Lt_042D:
++jmp .Lt_0362
++.Lt_0431:
++.Lt_0430:
+ push 6
+-push offset Lt_042F
++push offset Lt_0432
+ push 0
+ push dword ptr [ebp+8]
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0431
++jne .Lt_0434
+ mov dword ptr [ebp-4], 18
+-jmp .Lt_035F
+-.Lt_0431:
+-.Lt_0430:
+-jmp .Lt_0360
+-.Lt_0361:
++jmp .Lt_0362
++.Lt_0434:
++.Lt_0433:
++jmp .Lt_0363
++.Lt_0364:
+ mov eax, dword ptr [ebp-8]
+ add eax, 4294967251
+ cmp eax, 77
+-ja .Lt_0360
++ja .Lt_0363
+ mov eax, dword ptr [ebp-8]
+-jmp dword ptr [.LT_0432+eax*4-180]
+-.LT_0432:
+-.int .Lt_042B
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0375
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_03D3
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_03F1
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0419
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_0360
++jmp dword ptr [.LT_0435+eax*4-180]
++.LT_0435:
++.int .Lt_042E
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0378
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_03D6
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_03F4
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_041C
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_0363
+ .int .Lt_0363
+-.int .Lt_036D
+-.int .Lt_0371
+-.int .Lt_0379
+-.int .Lt_0383
+-.int .Lt_0390
+-.int .Lt_039B
+-.int .Lt_03A2
+-.int .Lt_03A7
+-.int .Lt_0360
+-.int .Lt_0360
+-.int .Lt_03AE
+-.int .Lt_03B7
+-.int .Lt_03C4
+-.int .Lt_03CF
+-.int .Lt_03D7
+-.int .Lt_0360
+-.int .Lt_03EA
+-.int .Lt_03F8
+-.int .Lt_0402
+-.int .Lt_0360
+-.int .Lt_040B
+-.int .Lt_0415
+-.int .Lt_0424
+-.int .Lt_0360
++.int .Lt_0363
++.int .Lt_0366
++.int .Lt_0370
++.int .Lt_0374
++.int .Lt_037C
++.int .Lt_0386
++.int .Lt_0393
++.int .Lt_039E
++.int .Lt_03A5
++.int .Lt_03AA
++.int .Lt_0363
++.int .Lt_0363
++.int .Lt_03B1
++.int .Lt_03BA
++.int .Lt_03C7
++.int .Lt_03D2
++.int .Lt_03DA
++.int .Lt_0363
++.int .Lt_03ED
++.int .Lt_03FB
++.int .Lt_0405
++.int .Lt_0363
++.int .Lt_040E
++.int .Lt_0418
+ .int .Lt_0427
+-.Lt_0360:
++.int .Lt_0363
++.int .Lt_042A
++.Lt_0363:
+ mov dword ptr [ebp-4], -1
+-.Lt_035F:
++.Lt_0362:
+ mov eax, dword ptr [ebp-4]
+ pop ebx
+ mov esp, ebp
+@@ -8653,49 +8692,49 @@ push ebp
+ mov ebp, esp
+ sub esp, 20
+ push ebx
+-.Lt_0433:
++.Lt_0436:
+ cmp dword ptr [FBC], 0
+-jl .Lt_0436
++jl .Lt_0439
+ sub esp, 8
+ push -1
+ push dword ptr [ebp+8]
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jne .Lt_0438
++jne .Lt_043B
+ sub esp, 12
+ push dword ptr [ebp+8]
+ call HFATALINVALIDOPTION
+ add esp, 16
+-.Lt_0438:
+-.Lt_0437:
++.Lt_043B:
++.Lt_043A:
+ sub esp, 8
+ push dword ptr [ebp+8]
+ push dword ptr [FBC]
+ call HANDLEOPT
+ add esp, 16
+ mov dword ptr [FBC], -1
+-jmp .Lt_0434
+-.Lt_0436:
+-.Lt_0435:
++jmp .Lt_0437
++.Lt_0439:
++.Lt_0438:
+ sub esp, 8
+ push -1
+ push dword ptr [ebp+8]
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jne .Lt_043A
+-jmp .Lt_0434
+-.Lt_043A:
+-.Lt_0439:
++jne .Lt_043D
++jmp .Lt_0437
++.Lt_043D:
++.Lt_043C:
+ mov eax, dword ptr [ebp+8]
+ mov ebx, dword ptr [eax]
+ mov al, byte ptr [ebx]
+ mov byte ptr [ebp-4], al
+ movzx eax, byte ptr [ebp-4]
+ cmp eax, 45
+-jne .Lt_043D
+-.Lt_043E:
++jne .Lt_0440
++.Lt_0441:
+ mov eax, dword ptr [ebp+8]
+ mov ebx, dword ptr [eax]
+ inc ebx
+@@ -8703,47 +8742,47 @@ mov dword ptr [ebp-8], ebx
+ mov ebx, dword ptr [ebp-8]
+ movzx eax, byte ptr [ebx]
+ test eax, eax
+-jne .Lt_0440
++jne .Lt_0443
+ sub esp, 12
+ push dword ptr [ebp+8]
+ call HFATALINVALIDOPTION
+ add esp, 16
+-.Lt_0440:
+-.Lt_043F:
++.Lt_0443:
++.Lt_0442:
+ sub esp, 12
+ push dword ptr [ebp-8]
+ call PARSEOPTION
+ add esp, 16
+ mov dword ptr [ebp-12], eax
+ cmp dword ptr [ebp-12], 0
+-jge .Lt_0442
++jge .Lt_0445
+ sub esp, 12
+ push dword ptr [ebp+8]
+ call HFATALINVALIDOPTION
+ add esp, 16
+-.Lt_0442:
+-.Lt_0441:
++.Lt_0445:
++.Lt_0444:
+ mov eax, dword ptr [ebp-12]
+ cmp dword ptr [OPTION_TAKES_ARGUMENT+eax*4], 0
+-je .Lt_0444
++je .Lt_0447
+ mov eax, dword ptr [ebp-12]
+ mov dword ptr [FBC], eax
+-jmp .Lt_0443
+-.Lt_0444:
++jmp .Lt_0446
++.Lt_0447:
+ sub esp, 8
+ push dword ptr [ebp+8]
+ push dword ptr [ebp-12]
+ call HANDLEOPT
+ add esp, 16
+-.Lt_0443:
+-jmp .Lt_043B
+-.Lt_043D:
++.Lt_0446:
++jmp .Lt_043E
++.Lt_0440:
+ movzx eax, byte ptr [ebp-4]
+ cmp eax, 64
+-jne .Lt_0445
+-.Lt_0447:
+-cmp dword ptr [Lt_0732], 128
+-jle .Lt_0449
++jne .Lt_0448
++.Lt_044A:
++cmp dword ptr [Lt_0735], 128
++jle .Lt_044C
+ sub esp, 12
+ push 0
+ push 1
+@@ -8757,8 +8796,8 @@ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_0449:
+-.Lt_0448:
++.Lt_044C:
++.Lt_044B:
+ sub esp, 12
+ push 0
+ push -1
+@@ -8783,21 +8822,21 @@ push dword ptr [ebp+8]
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jne .Lt_044B
++jne .Lt_044E
+ sub esp, 12
+ push dword ptr [ebp+8]
+ call HFATALINVALIDOPTION
+ add esp, 16
+-.Lt_044B:
+-.Lt_044A:
+-inc dword ptr [Lt_0732]
++.Lt_044E:
++.Lt_044D:
++inc dword ptr [Lt_0735]
+ sub esp, 12
+ push dword ptr [ebp+8]
+ call PARSEARGSFROMFILE
+ add esp, 16
+-dec dword ptr [Lt_0732]
+-jmp .Lt_043B
+-.Lt_0445:
++dec dword ptr [Lt_0735]
++jmp .Lt_043E
++.Lt_0448:
+ sub esp, 12
+ push 0
+ push -1
+@@ -8813,75 +8852,75 @@ push eax
+ call fb_StrInit
+ add esp, 32
+ push 4
+-push offset Lt_044F
++push offset Lt_0452
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_044E
+-.Lt_0450:
++jne .Lt_0451
++.Lt_0453:
+ sub esp, 12
+ push dword ptr [ebp+8]
+ call HADDBAS
+ add esp, 16
+-jmp .Lt_044D
+-.Lt_044E:
++jmp .Lt_0450
++.Lt_0451:
+ push 2
+-push offset Lt_03D0
++push offset Lt_03D3
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0451
+-.Lt_0452:
++jne .Lt_0454
++.Lt_0455:
+ sub esp, 12
+ push dword ptr [ebp+8]
+ call FBCADDOBJ
+ add esp, 16
+-jmp .Lt_044D
+-.Lt_0451:
++jmp .Lt_0450
++.Lt_0454:
+ push 2
+-push offset Lt_0364
++push offset Lt_0367
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0453
+-.Lt_0454:
++jne .Lt_0456
++.Lt_0457:
+ sub esp, 8
+ push dword ptr [ebp+8]
+ lea eax, [FBC+220]
+ push eax
+ call STRLISTAPPEND
+ add esp, 16
+-jmp .Lt_044D
+-.Lt_0453:
++jmp .Lt_0450
++.Lt_0456:
+ push 3
+-push offset Lt_0456
++push offset Lt_0459
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-je .Lt_0458
+-.Lt_0459:
++je .Lt_045B
++.Lt_045C:
+ push 4
+-push offset Lt_0457
++push offset Lt_045A
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_0455
+-.Lt_0458:
++jne .Lt_0458
++.Lt_045B:
+ sub esp, 4
+ push -1
+ push dword ptr [ebp+8]
+@@ -8892,18 +8931,18 @@ add esp, 4
+ push eax
+ call HSETIOFILE
+ add esp, 16
+-jmp .Lt_044D
+-.Lt_0455:
++jmp .Lt_0450
++.Lt_0458:
+ push 4
+-push offset Lt_045B
++push offset Lt_045E
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-jne .Lt_045A
+-.Lt_045C:
++jne .Lt_045D
++.Lt_045F:
+ sub esp, 8
+ push -1
+ lea eax, [FBC+136]
+@@ -8911,13 +8950,13 @@ push eax
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jle .Lt_045E
++jle .Lt_0461
+ sub esp, 12
+ push dword ptr [ebp+8]
+ call HFATALINVALIDOPTION
+ add esp, 16
+-.Lt_045E:
+-.Lt_045D:
++.Lt_0461:
++.Lt_0460:
+ sub esp, 4
+ push -1
+ push dword ptr [ebp+8]
+@@ -8925,22 +8964,22 @@ lea eax, [FBC+136]
+ push eax
+ call HSETIOFILE
+ add esp, 16
+-jmp .Lt_044D
+-.Lt_045A:
++jmp .Lt_0450
++.Lt_045D:
+ sub esp, 12
+ push dword ptr [ebp+8]
+ call HFATALINVALIDOPTION
+ add esp, 16
+-.Lt_045F:
+-.Lt_044D:
++.Lt_0462:
++.Lt_0450:
+ sub esp, 12
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_044C:
+-.Lt_043B:
+-.Lt_0434:
++.Lt_044F:
++.Lt_043E:
++.Lt_0437:
+ pop ebx
+ mov esp, ebp
+ pop ebp
+@@ -8949,7 +8988,7 @@ ret
+
+ .section .data
+ .balign 4
+-Lt_0732:
++Lt_0735:
+ .int 0
+
+ .section .text
+@@ -8960,7 +8999,7 @@ push ebp
+ mov ebp, esp
+ sub esp, 52
+ push ebx
+-.Lt_0460:
++.Lt_0463:
+ call fb_FileFree
+ mov dword ptr [ebp-4], eax
+ sub esp, 8
+@@ -8973,7 +9012,7 @@ push dword ptr [ebp+8]
+ call fb_FileOpen
+ add esp, 32
+ test eax, eax
+-je .Lt_0463
++je .Lt_0466
+ sub esp, 12
+ push 0
+ push 1
+@@ -8987,21 +9026,21 @@ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_0463:
+-.Lt_0462:
++.Lt_0466:
++.Lt_0465:
+ mov dword ptr [ebp-16], 0
+ mov dword ptr [ebp-12], 0
+ mov dword ptr [ebp-8], 0
+ mov dword ptr [ebp-28], 0
+ mov dword ptr [ebp-24], 0
+ mov dword ptr [ebp-20], 0
+-.Lt_0464:
++.Lt_0467:
+ sub esp, 12
+ push dword ptr [ebp-4]
+ call fb_FileEof
+ add esp, 16
+ test eax, eax
+-jne .Lt_0465
++jne .Lt_0468
+ push 0
+ push -1
+ lea eax, [ebp-16]
+@@ -9023,7 +9062,7 @@ lea eax, [ebp-16]
+ push eax
+ call fb_StrAssign
+ add esp, 32
+-.Lt_0466:
++.Lt_0469:
+ sub esp, 8
+ push -1
+ lea eax, [ebp-16]
+@@ -9032,69 +9071,69 @@ call fb_StrLen
+ add esp, 16
+ mov dword ptr [ebp-32], eax
+ cmp dword ptr [ebp-32], 0
+-jne .Lt_046A
+-jmp .Lt_0467
+-.Lt_046A:
+-.Lt_0469:
++jne .Lt_046D
++jmp .Lt_046A
++.Lt_046D:
++.Lt_046C:
+ mov dword ptr [ebp-36], 0
+ mov dword ptr [ebp-40], 0
+-.Lt_046B:
++.Lt_046E:
+ mov eax, dword ptr [ebp-32]
+ cmp dword ptr [ebp-36], eax
+-jge .Lt_046C
++jge .Lt_046F
+ mov eax, dword ptr [ebp-16]
+ add eax, dword ptr [ebp-36]
+ movzx ebx, byte ptr [eax]
+ mov dword ptr [ebp-44], ebx
+ mov ebx, dword ptr [ebp-44]
+ mov dword ptr [ebp-48], ebx
+-jmp .Lt_046E
+-.Lt_0470:
+-cmp dword ptr [ebp-40], 0
+-jne .Lt_0472
+-jmp .Lt_046C
+-.Lt_0472:
+-.Lt_0471:
+-jmp .Lt_046D
++jmp .Lt_0471
+ .Lt_0473:
++cmp dword ptr [ebp-40], 0
++jne .Lt_0475
++jmp .Lt_046F
++.Lt_0475:
++.Lt_0474:
++jmp .Lt_0470
++.Lt_0476:
+ mov ebx, dword ptr [ebp-44]
+ cmp dword ptr [ebp-40], ebx
+-jne .Lt_0476
++jne .Lt_0479
+ mov dword ptr [ebp-40], 0
+-jmp .Lt_0475
+-.Lt_0476:
++jmp .Lt_0478
++.Lt_0479:
+ cmp dword ptr [ebp-40], 0
+-jne .Lt_0477
++jne .Lt_047A
+ mov ebx, dword ptr [ebp-44]
+ mov dword ptr [ebp-40], ebx
+-.Lt_0477:
+-.Lt_0475:
+-jmp .Lt_046D
+-.Lt_046E:
++.Lt_047A:
++.Lt_0478:
++jmp .Lt_0470
++.Lt_0471:
+ mov ebx, dword ptr [ebp-48]
+ add ebx, 4294967264
+ cmp ebx, 7
+-ja .Lt_046D
++ja .Lt_0470
+ mov ebx, dword ptr [ebp-48]
+-jmp dword ptr [.LT_0478+ebx*4-128]
+-.LT_0478:
+-.int .Lt_0470
+-.int .Lt_046D
++jmp dword ptr [.LT_047B+ebx*4-128]
++.LT_047B:
+ .int .Lt_0473
+-.int .Lt_046D
+-.int .Lt_046D
+-.int .Lt_046D
+-.int .Lt_046D
+-.int .Lt_0473
+-.Lt_046D:
++.int .Lt_0470
++.int .Lt_0476
++.int .Lt_0470
++.int .Lt_0470
++.int .Lt_0470
++.int .Lt_0470
++.int .Lt_0476
++.Lt_0470:
+ inc dword ptr [ebp-36]
+-jmp .Lt_046B
+-.Lt_046C:
++jmp .Lt_046E
++.Lt_046F:
+ cmp dword ptr [ebp-36], 0
+-jne .Lt_047A
++jne .Lt_047D
+ mov dword ptr [ebp-36], 1
+-jmp .Lt_0479
+-.Lt_047A:
++jmp .Lt_047C
++.Lt_047D:
+ sub esp, 12
+ push 0
+ push -1
+@@ -9143,7 +9182,7 @@ lea eax, [ebp-28]
+ push eax
+ call HANDLEARG
+ add esp, 16
+-.Lt_0479:
++.Lt_047C:
+ sub esp, 12
+ push 0
+ push -1
+@@ -9161,17 +9200,17 @@ lea eax, [ebp-16]
+ push eax
+ call fb_StrAssign
+ add esp, 32
++.Lt_046B:
++jmp .Lt_0469
++.Lt_046A:
++jmp .Lt_0467
+ .Lt_0468:
+-jmp .Lt_0466
+-.Lt_0467:
+-jmp .Lt_0464
+-.Lt_0465:
+ sub esp, 12
+ push dword ptr [ebp-4]
+ call fb_FileClose
+ add esp, 16
+ test eax, eax
+-je .Lt_047B
++je .Lt_047E
+ push 0
+ push 0
+ push offset Lt_007E
+@@ -9179,7 +9218,7 @@ push 2202
+ call fb_ErrorThrowAt
+ add esp, 16
+ jmp eax
+-.Lt_047B:
++.Lt_047E:
+ sub esp, 12
+ lea eax, [ebp-28]
+ push eax
+@@ -9190,7 +9229,7 @@ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_0461:
++.Lt_0464:
+ pop ebx
+ mov esp, ebp
+ pop ebp
+@@ -9203,39 +9242,39 @@ push ebp
+ mov ebp, esp
+ sub esp, 8
+ mov dword ptr [ebp-4], 0
+-.Lt_047C:
++.Lt_047F:
+ mov dword ptr [ebp-4], 0
+ call FBGETCPUFAMILY
+ test eax, eax
+-je .Lt_047F
++je .Lt_0482
+ sub esp, 12
+ push 3
+ call FBGETOPTION
+ add esp, 16
+ mov dword ptr [ebp-8], eax
+-jmp .Lt_0481
+-.Lt_0483:
++jmp .Lt_0484
++.Lt_0486:
+ mov dword ptr [ebp-4], -1
+-jmp .Lt_0480
+-.Lt_0481:
++jmp .Lt_0483
++.Lt_0484:
+ mov eax, dword ptr [ebp-8]
+ add eax, 4294967294
+ cmp eax, 6
+-ja .Lt_0480
++ja .Lt_0483
+ mov eax, dword ptr [ebp-8]
+-jmp dword ptr [.LT_0484+eax*4-8]
+-.LT_0484:
++jmp dword ptr [.LT_0487+eax*4-8]
++.LT_0487:
++.int .Lt_0486
+ .int .Lt_0483
+-.int .Lt_0480
+-.int .Lt_0480
+ .int .Lt_0483
++.int .Lt_0486
++.int .Lt_0486
+ .int .Lt_0483
+-.int .Lt_0480
+-.int .Lt_0483
++.int .Lt_0486
++.Lt_0483:
++.Lt_0482:
++.Lt_0481:
+ .Lt_0480:
+-.Lt_047F:
+-.Lt_047E:
+-.Lt_047D:
+ mov eax, dword ptr [ebp-4]
+ mov esp, ebp
+ pop ebp
+@@ -9248,7 +9287,7 @@ push ebp
+ mov ebp, esp
+ sub esp, 36
+ push ebx
+-.Lt_0485:
++.Lt_0488:
+ mov dword ptr [FBC], -1
+ mov dword ptr [ebp-12], 0
+ mov dword ptr [ebp-8], 0
+@@ -9257,8 +9296,8 @@ mov dword ptr [ebp-16], 1
+ mov eax, dword ptr [ebp+8]
+ dec eax
+ mov dword ptr [ebp-20], eax
+-jmp .Lt_0488
+-.Lt_048B:
++jmp .Lt_048B
++.Lt_048E:
+ sub esp, 12
+ push 0
+ push 0
+@@ -9277,15 +9316,15 @@ lea ebx, [ebp-12]
+ push ebx
+ call HANDLEARG
+ add esp, 16
+-.Lt_0489:
++.Lt_048C:
+ inc dword ptr [ebp-16]
+-.Lt_0488:
++.Lt_048B:
+ mov ebx, dword ptr [ebp-20]
+ cmp dword ptr [ebp-16], ebx
+-jle .Lt_048B
+-.Lt_048A:
++jle .Lt_048E
++.Lt_048D:
+ cmp dword ptr [FBC], 0
+-jl .Lt_048D
++jl .Lt_0490
+ sub esp, 12
+ mov dword ptr [ebp-24], 0
+ mov dword ptr [ebp-20], 0
+@@ -9311,15 +9350,15 @@ lea eax, [ebp-24]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_048D:
+-.Lt_048C:
++.Lt_0490:
++.Lt_048F:
+ call HCHECKWAITINGOBJFILE
+ sub esp, 12
+ push 5
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-jne .Lt_0490
++jne .Lt_0493
+ sub esp, 12
+ push 7
+ call FBGETOPTION
+@@ -9338,7 +9377,7 @@ sete al
+ shr eax, 1
+ sbb eax, eax
+ or ebx, eax
+-je .Lt_0492
++je .Lt_0495
+ sub esp, 12
+ push 0
+ push 1
+@@ -9351,19 +9390,19 @@ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
++.Lt_0495:
++.Lt_0494:
++.Lt_0493:
+ .Lt_0492:
+-.Lt_0491:
+-.Lt_0490:
+-.Lt_048F:
+ cmp dword ptr [FBC+24], 0
+-jl .Lt_0494
++jl .Lt_0497
+ sub esp, 8
+ push dword ptr [FBC+24]
+ push 4
+ call FBSETOPTION
+ add esp, 16
+-.Lt_0494:
+-.Lt_0493:
++.Lt_0497:
++.Lt_0496:
+ sub esp, 12
+ push 3
+ call FBGETOPTION
+@@ -9379,7 +9418,7 @@ setne al
+ shr eax, 1
+ sbb eax, eax
+ and ebx, eax
+-je .Lt_0496
++je .Lt_0499
+ sub esp, 12
+ push 0
+ push 1
+@@ -9395,33 +9434,33 @@ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_0496:
+-.Lt_0495:
++.Lt_0499:
++.Lt_0498:
+ call FBGETCPUFAMILY
+ test eax, eax
+-jne .Lt_0498
++jne .Lt_049B
+ sub esp, 8
+ push 0
+ push 2
+ call FBSETOPTION
+ add esp, 16
+-jmp .Lt_0497
+-.Lt_0498:
++jmp .Lt_049A
++.Lt_049B:
+ sub esp, 8
+ push 1
+ push 2
+ call FBSETOPTION
+ add esp, 16
+-.Lt_0497:
++.Lt_049A:
+ cmp dword ptr [FBC+20], 0
+-jl .Lt_049A
++jl .Lt_049D
+ sub esp, 8
+ push dword ptr [FBC+20]
+ push 2
+ call FBSETOPTION
+ add esp, 16
+-.Lt_049A:
+-.Lt_0499:
++.Lt_049D:
++.Lt_049C:
+ sub esp, 12
+ push 2
+ call FBGETOPTION
+@@ -9437,7 +9476,7 @@ setne al
+ shr eax, 1
+ sbb eax, eax
+ and ebx, eax
+-je .Lt_049C
++je .Lt_049F
+ sub esp, 12
+ push 0
+ push 1
+@@ -9453,17 +9492,17 @@ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_049C:
+-.Lt_049B:
++.Lt_049F:
++.Lt_049E:
+ sub esp, 12
+ push 3
+ call FBGETOPTION
+ add esp, 16
+ mov dword ptr [ebp-16], eax
+-jmp .Lt_049E
+-.Lt_04A0:
+-jmp .Lt_049D
+-.Lt_04A1:
++jmp .Lt_04A1
++.Lt_04A3:
++jmp .Lt_04A0
++.Lt_04A4:
+ sub esp, 12
+ lea eax, [FBC+104]
+ push eax
+@@ -9471,7 +9510,7 @@ call LISTGETHEAD
+ add esp, 16
+ mov dword ptr [ebp-20], eax
+ cmp dword ptr [ebp-20], 0
+-je .Lt_04A3
++je .Lt_04A6
+ sub esp, 12
+ push 0
+ push 1
+@@ -9485,30 +9524,30 @@ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_04A3:
+-.Lt_04A2:
+-jmp .Lt_049D
+-.Lt_049E:
++.Lt_04A6:
++.Lt_04A5:
++jmp .Lt_04A0
++.Lt_04A1:
+ cmp dword ptr [ebp-16], 4
+-ja .Lt_04A1
++ja .Lt_04A4
+ mov eax, dword ptr [ebp-16]
+-jmp dword ptr [.LT_04A4+eax*4]
+-.LT_04A4:
+-.int .Lt_04A0
+-.int .Lt_04A0
+-.int .Lt_04A1
+-.int .Lt_04A1
+-.int .Lt_04A0
+-.Lt_049D:
++jmp dword ptr [.LT_04A7+eax*4]
++.LT_04A7:
++.int .Lt_04A3
++.int .Lt_04A3
++.int .Lt_04A4
++.int .Lt_04A4
++.int .Lt_04A3
++.Lt_04A0:
+ sub esp, 12
+ push 3
+ call FBGETOPTION
+ add esp, 16
+ mov dword ptr [ebp-16], eax
+-jmp .Lt_04A6
+-.Lt_04A8:
+-jmp .Lt_04A5
+-.Lt_04A9:
++jmp .Lt_04A9
++.Lt_04AB:
++jmp .Lt_04A8
++.Lt_04AC:
+ sub esp, 8
+ push -1
+ lea eax, [FBC+136]
+@@ -9516,7 +9555,7 @@ push eax
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jle .Lt_04AB
++jle .Lt_04AE
+ sub esp, 12
+ push 0
+ push 1
+@@ -9529,37 +9568,37 @@ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_04AB:
+-.Lt_04AA:
+-jmp .Lt_04A5
+-.Lt_04A6:
++.Lt_04AE:
++.Lt_04AD:
++jmp .Lt_04A8
++.Lt_04A9:
+ mov eax, dword ptr [ebp-16]
+ add eax, 4294967294
+ cmp eax, 6
+-ja .Lt_04A9
++ja .Lt_04AC
+ mov eax, dword ptr [ebp-16]
+-jmp dword ptr [.LT_04AC+eax*4-8]
+-.LT_04AC:
+-.int .Lt_04A8
+-.int .Lt_04A9
+-.int .Lt_04A9
+-.int .Lt_04A8
+-.int .Lt_04A8
+-.int .Lt_04A8
+-.int .Lt_04A8
+-.Lt_04A5:
++jmp dword ptr [.LT_04AF+eax*4-8]
++.LT_04AF:
++.int .Lt_04AB
++.int .Lt_04AC
++.int .Lt_04AC
++.int .Lt_04AB
++.int .Lt_04AB
++.int .Lt_04AB
++.int .Lt_04AB
++.Lt_04A8:
+ cmp dword ptr [FBC+32], 0
+-jl .Lt_04AE
++jl .Lt_04B1
+ call FBGETCPUFAMILY
+ mov dword ptr [ebp-16], eax
+ cmp dword ptr [ebp-16], 0
+-je .Lt_04B2
+-.Lt_04B3:
++je .Lt_04B5
++.Lt_04B6:
+ cmp dword ptr [ebp-16], 1
+-jne .Lt_04B1
+-.Lt_04B2:
+-jmp .Lt_04AF
+-.Lt_04B1:
++jne .Lt_04B4
++.Lt_04B5:
++jmp .Lt_04B2
++.Lt_04B4:
+ sub esp, 12
+ push 0
+ push 1
+@@ -9588,8 +9627,8 @@ lea eax, [ebp-28]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_04B4:
+-.Lt_04AF:
++.Lt_04B7:
++.Lt_04B2:
+ sub esp, 12
+ push 2
+ call FBGETOPTION
+@@ -9604,7 +9643,7 @@ setne bl
+ shr ebx, 1
+ sbb ebx, ebx
+ and eax, ebx
+-je .Lt_04B7
++je .Lt_04BA
+ sub esp, 12
+ push 0
+ push 1
+@@ -9613,45 +9652,45 @@ push offset Lt_0000
+ push 84
+ call ERRREPORTEX
+ add esp, 32
+-.Lt_04B7:
+-.Lt_04B6:
++.Lt_04BA:
++.Lt_04B9:
+ sub esp, 8
+ push dword ptr [FBC+32]
+ push 9
+ call FBSETOPTION
+ add esp, 16
+-.Lt_04AE:
+-.Lt_04AD:
++.Lt_04B1:
++.Lt_04B0:
+ sub esp, 12
+ push 0
+ call FBGETOPTION
+ add esp, 16
+ cmp eax, 2
+-jne .Lt_04B9
++jne .Lt_04BC
+ call HTARGETNEEDSPIC
+ test eax, eax
+-je .Lt_04BB
++je .Lt_04BE
+ sub esp, 8
+ push -1
+ push 27
+ call FBSETOPTION
+ add esp, 16
++.Lt_04BE:
++.Lt_04BD:
++.Lt_04BC:
+ .Lt_04BB:
+-.Lt_04BA:
+-.Lt_04B9:
+-.Lt_04B8:
+ sub esp, 12
+ push 27
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_04BD
++je .Lt_04C0
+ sub esp, 12
+ push 0
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-jne .Lt_04BF
++jne .Lt_04C2
+ sub esp, 12
+ push 0
+ push 1
+@@ -9660,11 +9699,11 @@ push offset Lt_0000
+ push 85
+ call ERRREPORTEX
+ add esp, 32
+-jmp .Lt_04BE
+-.Lt_04BF:
++jmp .Lt_04C1
++.Lt_04C2:
+ call HTARGETNEEDSPIC
+ test eax, eax
+-jne .Lt_04C0
++jne .Lt_04C3
+ sub esp, 12
+ push 0
+ push 1
+@@ -9673,16 +9712,16 @@ push offset Lt_0000
+ push 86
+ call ERRREPORTEX
+ add esp, 32
++.Lt_04C3:
++.Lt_04C1:
+ .Lt_04C0:
+-.Lt_04BE:
+-.Lt_04BD:
+-.Lt_04BC:
++.Lt_04BF:
+ sub esp, 12
+ lea eax, [ebp-12]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_0486:
++.Lt_0489:
+ pop ebx
+ mov esp, ebp
+ pop ebp
+@@ -9694,7 +9733,7 @@ FBCDETERMINEPREFIX:
+ push ebp
+ mov ebp, esp
+ sub esp, 40
+-.Lt_04C1:
++.Lt_04C4:
+ sub esp, 8
+ push 261
+ lea eax, [FBC+2128]
+@@ -9702,7 +9741,7 @@ push eax
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jne .Lt_04C4
++jne .Lt_04C7
+ sub esp, 12
+ push 0
+ push -1
+@@ -9753,7 +9792,7 @@ push 0
+ push -1
+ sub esp, 8
+ push 4
+-push offset Lt_04C8
++push offset Lt_04CB
+ push 261
+ lea eax, [FBC+2128]
+ push eax
+@@ -9770,8 +9809,8 @@ lea eax, [FBC+2128]
+ push eax
+ call fb_StrAssign
+ add esp, 32
+-jmp .Lt_04C3
+-.Lt_04C4:
++jmp .Lt_04C6
++.Lt_04C7:
+ sub esp, 12
+ push 0
+ push -1
+@@ -9794,8 +9833,8 @@ lea eax, [FBC+2128]
+ push eax
+ call fb_StrAssign
+ add esp, 32
+-.Lt_04C3:
+-.Lt_04C2:
++.Lt_04C6:
++.Lt_04C5:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -9806,7 +9845,7 @@ FBCSETUPCOMPILERPATHS:
+ push ebp
+ mov ebp, esp
+ sub esp, 168
+-.Lt_04CB:
++.Lt_04CE:
+ sub esp, 12
+ push 0
+ push -1
+@@ -9825,7 +9864,7 @@ mov dword ptr [ebp-16], 0
+ sub esp, 12
+ push 0
+ push 10
+-push offset Lt_04CD
++push offset Lt_04D0
+ push -1
+ lea eax, [ebp-24]
+ push eax
+@@ -9854,7 +9893,7 @@ push offset Lt_001A
+ push -1
+ sub esp, 4
+ push 4
+-push offset Lt_04CE
++push offset Lt_04D1
+ push 261
+ lea eax, [FBC+2128]
+ push eax
+@@ -9901,7 +9940,7 @@ push offset Lt_001A
+ push -1
+ sub esp, 4
+ push 8
+-push offset Lt_03AB
++push offset Lt_03AE
+ push 261
+ lea eax, [FBC+2128]
+ push eax
+@@ -10022,7 +10061,7 @@ lea eax, [ebp-12]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_04CC:
++.Lt_04CF:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -10033,7 +10072,7 @@ FBCPRINTTARGETINFO:
+ push ebp
+ mov ebp, esp
+ sub esp, 40
+-.Lt_04DA:
++.Lt_04DD:
+ sub esp, 12
+ push 0
+ push -1
+@@ -10056,7 +10095,7 @@ push 0
+ call FBGETFBCARCH
+ push eax
+ push 3
+-push offset Lt_04DC
++push offset Lt_04DF
+ mov dword ptr [ebp-24], 0
+ mov dword ptr [ebp-20], 0
+ mov dword ptr [ebp-16], 0
+@@ -10084,7 +10123,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 3
+-push offset Lt_04DC
++push offset Lt_04DF
+ push -1
+ lea eax, [ebp-12]
+ push eax
+@@ -10109,7 +10148,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 4
+-push offset Lt_04DF
++push offset Lt_04E2
+ push -1
+ lea eax, [ebp-12]
+ push eax
+@@ -10122,11 +10161,11 @@ push eax
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jle .Lt_04E1
++jle .Lt_04E4
+ sub esp, 12
+ push 0
+ push 3
+-push offset Lt_04E2
++push offset Lt_04E5
+ push -1
+ lea eax, [ebp-12]
+ push eax
+@@ -10145,18 +10184,18 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 2
+-push offset Lt_04E3
++push offset Lt_04E6
+ push -1
+ lea eax, [ebp-12]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_04E1:
+-.Lt_04E0:
++.Lt_04E4:
++.Lt_04E3:
+ sub esp, 4
+ push 2
+ push 7
+-push offset Lt_04E4
++push offset Lt_04E7
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -10175,7 +10214,7 @@ lea eax, [ebp-12]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_04DB:
++.Lt_04DE:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -10187,7 +10226,7 @@ push ebp
+ mov ebp, esp
+ sub esp, 20
+ push ebx
+-.Lt_04E5:
++.Lt_04E8:
+ sub esp, 8
+ push 261
+ lea eax, [FBC+689]
+@@ -10195,7 +10234,7 @@ push eax
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jne .Lt_04E8
++jne .Lt_04EB
+ sub esp, 12
+ lea eax, [FBC+72]
+ push eax
+@@ -10203,7 +10242,7 @@ call LISTGETHEAD
+ add esp, 16
+ mov dword ptr [ebp-4], eax
+ cmp dword ptr [ebp-4], 0
+-je .Lt_04EA
++je .Lt_04ED
+ sub esp, 12
+ push 0
+ push -1
+@@ -10215,8 +10254,8 @@ lea ebx, [FBC+689]
+ push ebx
+ call fb_StrAssign
+ add esp, 32
+-jmp .Lt_04E9
+-.Lt_04EA:
++jmp .Lt_04EC
++.Lt_04ED:
+ sub esp, 12
+ lea ebx, [FBC+188]
+ push ebx
+@@ -10224,7 +10263,7 @@ call LISTGETHEAD
+ add esp, 16
+ mov dword ptr [ebp-20], eax
+ cmp dword ptr [ebp-20], 0
+-je .Lt_04EC
++je .Lt_04EF
+ sub esp, 12
+ push 0
+ push -1
+@@ -10234,19 +10273,19 @@ lea eax, [FBC+689]
+ push eax
+ call fb_StrAssign
+ add esp, 32
+-jmp .Lt_04EB
+-.Lt_04EC:
++jmp .Lt_04EE
++.Lt_04EF:
+ sub esp, 12
+ push 0
+ push 8
+-push offset Lt_04ED
++push offset Lt_04F0
+ push 261
+ lea eax, [FBC+689]
+ push eax
+ call fb_StrAssign
+ add esp, 32
+-.Lt_04EB:
+-.Lt_04E9:
++.Lt_04EE:
++.Lt_04EC:
+ sub esp, 12
+ push 0
+ push -1
+@@ -10278,9 +10317,9 @@ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_04E8:
+-.Lt_04E7:
+-.Lt_04E6:
++.Lt_04EB:
++.Lt_04EA:
++.Lt_04E9:
+ pop ebx
+ mov esp, ebp
+ pop ebp
+@@ -10295,7 +10334,7 @@ sub esp, 56
+ mov dword ptr [ebp-12], 0
+ mov dword ptr [ebp-8], 0
+ mov dword ptr [ebp-4], 0
+-.Lt_04EF:
++.Lt_04F2:
+ mov dword ptr [ebp-28], 0
+ mov dword ptr [ebp-24], 0
+ mov dword ptr [ebp-20], 0
+@@ -10313,31 +10352,31 @@ lea eax, [ebp-28]
+ push eax
+ call fb_StrAssign
+ add esp, 32
+-mov eax, offset Lt_04F1
++mov eax, offset Lt_04F4
+ mov dword ptr [ebp-16], eax
+ cmp dword ptr [ebp+12], 1
+-jne .Lt_04F3
++jne .Lt_04F6
+ sub esp, 12
+ push 2
+ call FBGETOPTION
+ add esp, 16
+ mov dword ptr [ebp-44], eax
+ cmp dword ptr [ebp-44], 1
+-jne .Lt_04F6
+-.Lt_04F7:
+-mov eax, offset Lt_04F8
+-mov dword ptr [ebp-16], eax
+-jmp .Lt_04F4
+-.Lt_04F6:
+-cmp dword ptr [ebp-44], 2
+ jne .Lt_04F9
+ .Lt_04FA:
+ mov eax, offset Lt_04FB
+ mov dword ptr [ebp-16], eax
++jmp .Lt_04F7
+ .Lt_04F9:
+-.Lt_04F4:
+-.Lt_04F3:
+-.Lt_04F2:
++cmp dword ptr [ebp-44], 2
++jne .Lt_04FC
++.Lt_04FD:
++mov eax, offset Lt_04FE
++mov dword ptr [ebp-16], eax
++.Lt_04FC:
++.Lt_04F7:
++.Lt_04F6:
++.Lt_04F5:
+ sub esp, 12
+ push 0
+ push -1
+@@ -10375,7 +10414,7 @@ lea eax, [ebp-28]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_04F0:
++.Lt_04F3:
+ sub esp, 12
+ lea eax, [ebp-12]
+ push eax
+@@ -10392,7 +10431,7 @@ push ebp
+ mov ebp, esp
+ sub esp, 52
+ push ebx
+-.Lt_04FD:
++.Lt_0500:
+ mov dword ptr [ebp-24], 0
+ mov dword ptr [ebp-20], 0
+ mov dword ptr [ebp-16], 0
+@@ -10428,20 +10467,20 @@ mov ecx, dword ptr [FBC+48]
+ not ecx
+ or eax, ecx
+ and ebx, eax
+-je .Lt_0500
++je .Lt_0503
+ sub esp, 12
+ lea eax, [ebp-24]
+ push eax
+ call FBCADDTEMP
+ add esp, 16
+-.Lt_0500:
+-.Lt_04FF:
++.Lt_0503:
++.Lt_0502:
+ sub esp, 12
+ push 1
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_0502
++je .Lt_0505
+ sub esp, 12
+ push 0
+ push -1
+@@ -10454,13 +10493,13 @@ call fb_StrAssign
+ add esp, 32
+ mov eax, dword ptr [ebp+8]
+ cmp dword ptr [eax+16], 0
+-jne .Lt_0504
++jne .Lt_0507
+ sub esp, 12
+ push 0
+ push -1
+ sub esp, 8
+ push 8
+-push offset Lt_0505
++push offset Lt_0508
+ push -1
+ sub esp, 4
+ lea eax, [ebp-36]
+@@ -10481,16 +10520,16 @@ lea eax, [ebp-36]
+ push eax
+ call fb_StrAssign
+ add esp, 32
++.Lt_0507:
++.Lt_0506:
++.Lt_0505:
+ .Lt_0504:
+-.Lt_0503:
+-.Lt_0502:
+-.Lt_0501:
+ cmp dword ptr [FBC+56], 0
+-je .Lt_0508
++je .Lt_050B
+ sub esp, 4
+ push 2
+ push 11
+-push offset Lt_0509
++push offset Lt_050C
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -10508,7 +10547,7 @@ add esp, 16
+ sub esp, 4
+ push 0
+ push 4
+-push offset Lt_050A
++push offset Lt_050D
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -10527,7 +10566,7 @@ push 1
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_050C
++je .Lt_050F
+ sub esp, 4
+ push 0
+ sub esp, 4
+@@ -10535,7 +10574,7 @@ push -1
+ lea eax, [ebp-36]
+ push eax
+ push 6
+-push offset Lt_050D
++push offset Lt_0510
+ mov dword ptr [ebp-48], 0
+ mov dword ptr [ebp-44], 0
+ mov dword ptr [ebp-40], 0
+@@ -10547,43 +10586,43 @@ push eax
+ push 0
+ call fb_PrintString
+ add esp, 16
+-.Lt_050C:
+-.Lt_050B:
++.Lt_050F:
++.Lt_050E:
+ cmp dword ptr [ebp+12], 0
+-je .Lt_0510
++je .Lt_0513
+ sub esp, 4
+ push 0
+ push 14
+-push offset Lt_0511
++push offset Lt_0514
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+ push 0
+ call fb_PrintString
+ add esp, 16
+-jmp .Lt_050F
+-.Lt_0510:
++jmp .Lt_0512
++.Lt_0513:
+ cmp dword ptr [ebp+16], 0
+-je .Lt_0512
++je .Lt_0515
+ sub esp, 4
+ push 0
+ push 23
+-push offset Lt_0513
++push offset Lt_0516
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+ push 0
+ call fb_PrintString
+ add esp, 16
++.Lt_0515:
+ .Lt_0512:
+-.Lt_050F:
+ sub esp, 8
+ push 1
+ push 0
+ call fb_PrintVoid
+ add esp, 16
+-.Lt_0508:
+-.Lt_0507:
++.Lt_050B:
++.Lt_050A:
+ mov dword ptr [ebp-12], 0
+ sub esp, 12
+ push 10
+@@ -10596,22 +10635,22 @@ call FBGETOPTION
+ add esp, 16
+ mov dword ptr [ebp-8], eax
+ cmp dword ptr [ebp+16], 0
+-je .Lt_0515
++je .Lt_0518
+ sub esp, 8
+ push 3
+ push 0
+ call FBSETOPTION
+ add esp, 16
+-.Lt_0515:
+-.Lt_0514:
+-.Lt_0516:
++.Lt_0518:
++.Lt_0517:
++.Lt_0519:
+ sub esp, 8
+ push dword ptr [ebp-12]
+ push dword ptr [ebp+12]
+ call FBINIT
+ add esp, 16
+ cmp dword ptr [ebp+16], 0
+-je .Lt_051A
++je .Lt_051D
+ sub esp, 8
+ lea eax, [FBC+384]
+ push eax
+@@ -10619,8 +10658,8 @@ lea eax, [FBC+340]
+ push eax
+ call FBSETLIBS
+ add esp, 16
+-jmp .Lt_0519
+-.Lt_051A:
++jmp .Lt_051C
++.Lt_051D:
+ sub esp, 8
+ lea eax, [FBC+296]
+ push eax
+@@ -10628,7 +10667,7 @@ lea eax, [FBC+252]
+ push eax
+ call FBSETLIBS
+ add esp, 16
+-.Lt_0519:
++.Lt_051C:
+ push dword ptr [ebp+12]
+ lea eax, [ebp-36]
+ push eax
+@@ -10639,26 +10678,26 @@ call FBCOMPILE
+ add esp, 16
+ call ERRGETCOUNT
+ test eax, eax
+-jle .Lt_051C
++jle .Lt_051F
+ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_051C:
+-.Lt_051B:
++.Lt_051F:
++.Lt_051E:
+ call FBSHOULDRESTART
+ test eax, eax
+-jne .Lt_051E
+-jmp .Lt_0517
+-.Lt_051E:
+-.Lt_051D:
++jne .Lt_0521
++jmp .Lt_051A
++.Lt_0521:
++.Lt_0520:
+ inc dword ptr [ebp-12]
+ call FBEND
+-.Lt_0518:
+-jmp .Lt_0516
+-.Lt_0517:
++.Lt_051B:
++jmp .Lt_0519
++.Lt_051A:
+ cmp dword ptr [ebp+16], 0
+-jne .Lt_0520
++jne .Lt_0523
+ sub esp, 8
+ lea eax, [FBC+384]
+ push eax
+@@ -10666,8 +10705,8 @@ lea eax, [FBC+340]
+ push eax
+ call FBGETLIBS
+ add esp, 16
+-.Lt_0520:
+-.Lt_051F:
++.Lt_0523:
++.Lt_0522:
+ call FBEND
+ sub esp, 8
+ push dword ptr [ebp-8]
+@@ -10689,7 +10728,7 @@ lea eax, [ebp-24]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_04FE:
++.Lt_0501:
+ pop ebx
+ mov esp, ebp
+ pop ebp
+@@ -10702,7 +10741,7 @@ push ebp
+ mov ebp, esp
+ sub esp, 36
+ push ebx
+-.Lt_0521:
++.Lt_0524:
+ mov dword ptr [ebp-20], 0
+ mov dword ptr [ebp-16], 0
+ mov dword ptr [ebp-12], 0
+@@ -10713,20 +10752,20 @@ call FBGETOPTION
+ add esp, 16
+ mov dword ptr [ebp-28], eax
+ cmp dword ptr [ebp-28], 0
+-je .Lt_0526
+-.Lt_0527:
++je .Lt_0529
++.Lt_052A:
+ cmp dword ptr [ebp-28], 2
+-jne .Lt_0525
+-.Lt_0526:
++jne .Lt_0528
++.Lt_0529:
+ mov dword ptr [ebp-8], -1
+-jmp .Lt_0523
+-.Lt_0525:
++jmp .Lt_0526
++.Lt_0528:
+ mov eax, dword ptr [FBC+952]
+ mov dword ptr [ebp-8], eax
+-.Lt_0528:
+-.Lt_0523:
++.Lt_052B:
++.Lt_0526:
+ cmp dword ptr [ebp-8], 0
+-je .Lt_052A
++je .Lt_052D
+ sub esp, 12
+ push 0
+ push -1
+@@ -10741,8 +10780,8 @@ lea eax, [ebp-20]
+ push eax
+ call fb_StrAssign
+ add esp, 32
+-.Lt_052A:
+-.Lt_0529:
++.Lt_052D:
++.Lt_052C:
+ sub esp, 12
+ lea eax, [FBC+72]
+ push eax
+@@ -10750,7 +10789,7 @@ call LISTGETHEAD
+ add esp, 16
+ mov dword ptr [ebp-24], eax
+ cmp dword ptr [ebp-24], 0
+-jne .Lt_052C
++jne .Lt_052F
+ sub esp, 8
+ lea eax, [FBC+252]
+ push eax
+@@ -10770,12 +10809,12 @@ lea eax, [ebp-20]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-jmp .Lt_0522
+-.Lt_052C:
+-.Lt_052B:
+-.Lt_052D:
++jmp .Lt_0525
++.Lt_052F:
++.Lt_052E:
++.Lt_0530:
+ cmp dword ptr [ebp-8], 0
+-je .Lt_0531
++je .Lt_0534
+ push -1
+ sub esp, 8
+ mov dword ptr [ebp-36], 0
+@@ -10814,8 +10853,8 @@ lea eax, [ebp-36]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_0531:
+-.Lt_0530:
++.Lt_0534:
++.Lt_0533:
+ sub esp, 4
+ push 0
+ push dword ptr [ebp-4]
+@@ -10827,16 +10866,16 @@ push dword ptr [ebp-24]
+ call LISTGETNEXT
+ add esp, 16
+ mov dword ptr [ebp-24], eax
+-.Lt_052F:
++.Lt_0532:
+ cmp dword ptr [ebp-24], 0
+-jne .Lt_052D
+-.Lt_052E:
++jne .Lt_0530
++.Lt_0531:
+ sub esp, 12
+ lea eax, [ebp-20]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_0522:
++.Lt_0525:
+ pop ebx
+ mov esp, ebp
+ pop ebp
+@@ -10850,13 +10889,13 @@ mov ebp, esp
+ sub esp, 148
+ push ebx
+ mov dword ptr [ebp-4], 0
+-.Lt_0533:
++.Lt_0536:
+ sub esp, 12
+ push 0
+ push -1
+ sub esp, 8
+ push 28
+-push offset Lt_0535
++push offset Lt_0538
+ push -1
+ push dword ptr [ebp+12]
+ mov dword ptr [ebp-16], 0
+@@ -10876,7 +10915,7 @@ push 0
+ push -1
+ sub esp, 8
+ push 21
+-push offset Lt_0537
++push offset Lt_053A
+ push -1
+ push dword ptr [ebp+12]
+ mov dword ptr [ebp-28], 0
+@@ -10896,7 +10935,7 @@ push 0
+ push -1
+ sub esp, 8
+ push 20
+-push offset Lt_0539
++push offset Lt_053C
+ push -1
+ push dword ptr [ebp+12]
+ mov dword ptr [ebp-40], 0
+@@ -10923,10 +10962,10 @@ push dword ptr [ebp+8]
+ call fb_FileOpen
+ add esp, 32
+ test eax, eax
+-je .Lt_053C
+-jmp .Lt_0534
+-.Lt_053C:
+-.Lt_053B:
++je .Lt_053F
++jmp .Lt_0537
++.Lt_053F:
++.Lt_053E:
+ mov dword ptr [ebp-56], 0
+ mov dword ptr [ebp-52], 0
+ mov dword ptr [ebp-48], 0
+@@ -10938,7 +10977,7 @@ push dword ptr [ebp-44]
+ call fb_FileLineInput
+ add esp, 16
+ push 10
+-push offset Lt_053D
++push offset Lt_0540
+ push -1
+ sub esp, 12
+ push 0
+@@ -10950,13 +10989,13 @@ push eax
+ call fb_StrCompare
+ add esp, 16
+ test eax, eax
+-je .Lt_053F
++je .Lt_0542
+ sub esp, 12
+ push dword ptr [ebp-44]
+ call fb_FileClose
+ add esp, 16
+ test eax, eax
+-je .Lt_0540
++je .Lt_0543
+ push 0
+ push 0
+ push offset Lt_007E
+@@ -10964,23 +11003,23 @@ push 2719
+ call fb_ErrorThrowAt
+ add esp, 16
+ jmp eax
+-.Lt_0540:
++.Lt_0543:
+ sub esp, 12
+ lea eax, [ebp-56]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-jmp .Lt_0534
+-.Lt_053F:
+-.Lt_053E:
+-mov dword ptr [ebp-60], 0
++jmp .Lt_0537
++.Lt_0542:
+ .Lt_0541:
++mov dword ptr [ebp-60], 0
++.Lt_0544:
+ sub esp, 12
+ push dword ptr [ebp-44]
+ call fb_FileEof
+ add esp, 16
+ test eax, eax
+-jne .Lt_0542
++jne .Lt_0545
+ push 0
+ push -1
+ lea eax, [ebp-56]
+@@ -11057,15 +11096,15 @@ push eax
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jle .Lt_0544
++jle .Lt_0547
+ cmp dword ptr [ebp-60], 0
+-je .Lt_0546
++je .Lt_0549
+ sub esp, 12
+ push 0
+ push -1
+ sub esp, 8
+ push 5
+-push offset Lt_0547
++push offset Lt_054A
+ push -1
+ push dword ptr [ebp+12]
+ mov dword ptr [ebp-144], 0
+@@ -11080,8 +11119,8 @@ push -1
+ push dword ptr [ebp+12]
+ call fb_StrAssign
+ add esp, 32
+-.Lt_0546:
+-.Lt_0545:
++.Lt_0549:
++.Lt_0548:
+ sub esp, 12
+ push 0
+ push -1
+@@ -11092,7 +11131,7 @@ push -1
+ lea eax, [ebp-56]
+ push eax
+ push 3
+-push offset Lt_0549
++push offset Lt_054C
+ mov dword ptr [ebp-120], 0
+ mov dword ptr [ebp-116], 0
+ mov dword ptr [ebp-112], 0
+@@ -11116,16 +11155,16 @@ push dword ptr [ebp+12]
+ call fb_StrAssign
+ add esp, 32
+ mov dword ptr [ebp-60], -1
+-.Lt_0544:
+-.Lt_0543:
+-jmp .Lt_0541
+-.Lt_0542:
++.Lt_0547:
++.Lt_0546:
++jmp .Lt_0544
++.Lt_0545:
+ sub esp, 12
+ push dword ptr [ebp-44]
+ call fb_FileClose
+ add esp, 16
+ test eax, eax
+-je .Lt_054C
++je .Lt_054F
+ push 0
+ push 0
+ push offset Lt_007E
+@@ -11133,23 +11172,23 @@ push 2749
+ call fb_ErrorThrowAt
+ add esp, 16
+ jmp eax
+-.Lt_054C:
++.Lt_054F:
+ cmp dword ptr [ebp-60], 0
+-jne .Lt_054E
++jne .Lt_0551
+ sub esp, 12
+ lea eax, [ebp-56]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-jmp .Lt_0534
+-.Lt_054E:
+-.Lt_054D:
++jmp .Lt_0537
++.Lt_0551:
++.Lt_0550:
+ sub esp, 12
+ push 0
+ push -1
+ sub esp, 8
+ push 5
+-push offset Lt_054F
++push offset Lt_0552
+ push -1
+ push dword ptr [ebp+12]
+ mov dword ptr [ebp-72], 0
+@@ -11169,7 +11208,7 @@ push 0
+ push -1
+ sub esp, 8
+ push 4
+-push offset Lt_0551
++push offset Lt_0554
+ push -1
+ push dword ptr [ebp+12]
+ mov dword ptr [ebp-84], 0
+@@ -11189,7 +11228,7 @@ push 0
+ push -1
+ sub esp, 8
+ push 67
+-push offset Lt_0553
++push offset Lt_0556
+ push -1
+ push dword ptr [ebp+12]
+ mov dword ptr [ebp-96], 0
+@@ -11209,7 +11248,7 @@ push 0
+ push -1
+ sub esp, 8
+ push 74
+-push offset Lt_0557
++push offset Lt_055A
+ push -1
+ push dword ptr [ebp+12]
+ mov dword ptr [ebp-108], 0
+@@ -11230,7 +11269,7 @@ lea eax, [ebp-56]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_0534:
++.Lt_0537:
+ mov eax, dword ptr [ebp-4]
+ pop ebx
+ mov esp, ebp
+@@ -11244,7 +11283,7 @@ push ebp
+ mov ebp, esp
+ sub esp, 72
+ mov dword ptr [ebp-4], 0
+-.Lt_0559:
++.Lt_055C:
+ mov dword ptr [ebp-16], 0
+ mov dword ptr [ebp-12], 0
+ mov dword ptr [ebp-8], 0
+@@ -11258,7 +11297,7 @@ push eax
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jne .Lt_055C
++jne .Lt_055F
+ mov dword ptr [ebp-4], -1
+ sub esp, 12
+ lea eax, [ebp-28]
+@@ -11270,9 +11309,9 @@ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-jmp .Lt_055A
+-.Lt_055C:
+-.Lt_055B:
++jmp .Lt_055D
++.Lt_055F:
++.Lt_055E:
+ sub esp, 12
+ push 0
+ push -1
+@@ -11289,7 +11328,7 @@ push dword ptr [FBC+148]
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jle .Lt_055E
++jle .Lt_0561
+ sub esp, 12
+ push 0
+ push -1
+@@ -11303,23 +11342,23 @@ lea eax, [FBC+136]
+ push eax
+ call fb_StrAssign
+ add esp, 32
+-.Lt_055E:
+-.Lt_055D:
++.Lt_0561:
++.Lt_0560:
+ sub esp, 12
+ push 0
+ push 5
+-push offset Lt_055F
++push offset Lt_0562
+ push -1
+ lea eax, [FBC+136]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+ cmp dword ptr [FBC+56], 0
+-je .Lt_0561
++je .Lt_0564
+ sub esp, 4
+ push 2
+ push 13
+-push offset Lt_0562
++push offset Lt_0565
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -11335,7 +11374,7 @@ push eax
+ push -1
+ sub esp, 4
+ push 5
+-push offset Lt_050A
++push offset Lt_050D
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11358,8 +11397,8 @@ push eax
+ push 0
+ call fb_PrintString
+ add esp, 16
+-.Lt_0561:
+-.Lt_0560:
++.Lt_0564:
++.Lt_0563:
+ sub esp, 8
+ lea eax, [ebp-28]
+ push eax
+@@ -11368,7 +11407,7 @@ push eax
+ call HPARSEXPM
+ add esp, 16
+ test eax, eax
+-jne .Lt_0566
++jne .Lt_0569
+ sub esp, 12
+ lea eax, [ebp-28]
+ push eax
+@@ -11379,9 +11418,9 @@ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-jmp .Lt_055A
+-.Lt_0566:
+-.Lt_0565:
++jmp .Lt_055D
++.Lt_0569:
++.Lt_0568:
+ call fb_FileFree
+ mov dword ptr [ebp-32], eax
+ sub esp, 8
+@@ -11395,7 +11434,7 @@ push eax
+ call fb_FileOpen
+ add esp, 32
+ test eax, eax
+-je .Lt_0568
++je .Lt_056B
+ sub esp, 12
+ lea eax, [ebp-28]
+ push eax
+@@ -11406,9 +11445,9 @@ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-jmp .Lt_055A
+-.Lt_0568:
+-.Lt_0567:
++jmp .Lt_055D
++.Lt_056B:
++.Lt_056A:
+ mov eax, dword ptr [ebp-32]
+ mov dword ptr [ebp-36], eax
+ sub esp, 4
+@@ -11423,7 +11462,7 @@ push dword ptr [ebp-32]
+ call fb_FileClose
+ add esp, 16
+ test eax, eax
+-je .Lt_056A
++je .Lt_056D
+ push 0
+ push 0
+ push offset Lt_007E
+@@ -11431,16 +11470,16 @@ push 2805
+ call fb_ErrorThrowAt
+ add esp, 16
+ jmp eax
+-.Lt_056A:
++.Lt_056D:
+ cmp dword ptr [FBC+40], 0
+-jne .Lt_056C
++jne .Lt_056F
+ sub esp, 12
+ lea eax, [FBC+136]
+ push eax
+ call FBCADDTEMP
+ add esp, 16
+-.Lt_056C:
+-.Lt_056B:
++.Lt_056F:
++.Lt_056E:
+ sub esp, 4
+ push 0
+ push 0
+@@ -11459,7 +11498,7 @@ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_055A:
++.Lt_055D:
+ mov eax, dword ptr [ebp-4]
+ mov esp, ebp
+ pop ebp
+@@ -11472,7 +11511,7 @@ push ebp
+ mov ebp, esp
+ sub esp, 72
+ mov dword ptr [ebp-4], 0
+-.Lt_056D:
++.Lt_0570:
+ mov dword ptr [ebp-16], 0
+ mov dword ptr [ebp-12], 0
+ mov dword ptr [ebp-8], 0
+@@ -11494,65 +11533,65 @@ push eax
+ call fb_StrAssign
+ add esp, 32
+ cmp dword ptr [FBC+48], 0
+-jne .Lt_0570
++jne .Lt_0573
+ sub esp, 12
+ lea eax, [ebp-28]
+ push eax
+ call FBCADDTEMP
+ add esp, 16
+-.Lt_0570:
+-.Lt_056F:
++.Lt_0573:
++.Lt_0572:
+ sub esp, 12
+ push 2
+ call FBGETOPTION
+ add esp, 16
+ mov dword ptr [ebp-32], eax
+ cmp dword ptr [ebp-32], 1
+-jne .Lt_0573
+-.Lt_0574:
++jne .Lt_0576
++.Lt_0577:
+ call FBGETCPUFAMILY
+ mov dword ptr [ebp-36], eax
+ cmp dword ptr [ebp-36], 0
+-jne .Lt_0577
+-.Lt_0578:
++jne .Lt_057A
++.Lt_057B:
+ sub esp, 12
+ push 0
+ push 6
+-push offset Lt_0579
++push offset Lt_057C
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-jmp .Lt_0575
+-.Lt_0577:
++jmp .Lt_0578
++.Lt_057A:
+ cmp dword ptr [ebp-36], 1
+-jne .Lt_057A
+-.Lt_057B:
++jne .Lt_057D
++.Lt_057E:
+ sub esp, 12
+ push 0
+ push 6
+-push offset Lt_057C
++push offset Lt_057F
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_057A:
+-.Lt_0575:
++.Lt_057D:
++.Lt_0578:
+ cmp dword ptr [FBC+28], 0
+-je .Lt_057E
++je .Lt_0581
+ sub esp, 12
+ push 0
+ push 15
+-push offset Lt_057F
++push offset Lt_0582
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-jmp .Lt_057D
+-.Lt_057E:
++jmp .Lt_0580
++.Lt_0581:
+ sub esp, 12
+ push 0
+ push -1
+@@ -11567,7 +11606,7 @@ push 0
+ call FBGETGCCARCH
+ push eax
+ push 8
+-push offset Lt_0580
++push offset Lt_0583
+ mov dword ptr [ebp-44], 0
+ mov dword ptr [ebp-40], 0
+ mov dword ptr [ebp-36], 0
+@@ -11600,28 +11639,28 @@ lea eax, [ebp-16]
+ push eax
+ call fb_StrAssign
+ add esp, 32
+-.Lt_057D:
++.Lt_0580:
+ sub esp, 12
+ push 27
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_0585
++je .Lt_0588
+ sub esp, 12
+ push 0
+ push 7
+-push offset Lt_0586
++push offset Lt_0589
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_0585:
+-.Lt_0584:
++.Lt_0588:
++.Lt_0587:
+ sub esp, 12
+ push 0
+ push 119
+-push offset Lt_058B
++push offset Lt_058E
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11630,7 +11669,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 11
+-push offset Lt_058C
++push offset Lt_058F
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11639,7 +11678,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 39
+-push offset Lt_058D
++push offset Lt_0590
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11648,7 +11687,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 3
+-push offset Lt_058E
++push offset Lt_0591
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11682,7 +11721,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 22
+-push offset Lt_058F
++push offset Lt_0592
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11691,7 +11730,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 17
+-push offset Lt_0590
++push offset Lt_0593
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11700,7 +11739,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 17
+-push offset Lt_0591
++push offset Lt_0594
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11709,7 +11748,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 9
+-push offset Lt_0592
++push offset Lt_0595
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11718,7 +11757,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 68
+-push offset Lt_0593
++push offset Lt_0596
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11729,146 +11768,146 @@ push 12
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_0595
++je .Lt_0598
+ sub esp, 12
+ push 0
+ push 4
+-push offset Lt_0596
++push offset Lt_0599
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_0595:
+-.Lt_0594:
++.Lt_0598:
++.Lt_0597:
+ sub esp, 12
+ push 5
+ call FBGETOPTION
+ add esp, 16
+ cmp eax, 1
+-jne .Lt_0598
++jne .Lt_059B
+ sub esp, 12
+ push 0
+ push 21
+-push offset Lt_0599
++push offset Lt_059C
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_0598:
+-.Lt_0597:
++.Lt_059B:
++.Lt_059A:
+ call FBGETCPUFAMILY
+ mov dword ptr [ebp-36], eax
+ cmp dword ptr [ebp-36], 0
+-je .Lt_059D
+-.Lt_059E:
++je .Lt_05A0
++.Lt_05A1:
+ cmp dword ptr [ebp-36], 1
+-jne .Lt_059C
+-.Lt_059D:
++jne .Lt_059F
++.Lt_05A0:
+ sub esp, 12
+ push 9
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-jne .Lt_05A0
++jne .Lt_05A3
+ sub esp, 12
+ push 0
+ push 13
+-push offset Lt_05A1
++push offset Lt_05A4
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_05A0:
++.Lt_05A3:
++.Lt_05A2:
+ .Lt_059F:
+-.Lt_059C:
+-.Lt_059A:
+-jmp .Lt_0571
+-.Lt_0573:
++.Lt_059D:
++jmp .Lt_0574
++.Lt_0576:
+ cmp dword ptr [ebp-32], 2
+-jne .Lt_05A2
+-.Lt_05A3:
++jne .Lt_05A5
++.Lt_05A6:
+ call FBGETCPUFAMILY
+ mov dword ptr [ebp-36], eax
+ cmp dword ptr [ebp-36], 0
+-jne .Lt_05A6
+-.Lt_05A7:
++jne .Lt_05A9
++.Lt_05AA:
+ sub esp, 12
+ push 0
+ push 12
+-push offset Lt_05A8
++push offset Lt_05AB
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-jmp .Lt_05A4
+-.Lt_05A6:
++jmp .Lt_05A7
++.Lt_05A9:
+ cmp dword ptr [ebp-36], 1
+-jne .Lt_05A9
+-.Lt_05AA:
++jne .Lt_05AC
++.Lt_05AD:
+ sub esp, 12
+ push 0
+ push 15
+-push offset Lt_05AB
++push offset Lt_05AE
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-jmp .Lt_05A4
+-.Lt_05A9:
++jmp .Lt_05A7
++.Lt_05AC:
+ cmp dword ptr [ebp-36], 2
+-jne .Lt_05AC
+-.Lt_05AD:
++jne .Lt_05AF
++.Lt_05B0:
+ sub esp, 12
+ push 0
+ push 12
+-push offset Lt_05AE
++push offset Lt_05B1
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-jmp .Lt_05A4
+-.Lt_05AC:
++jmp .Lt_05A7
++.Lt_05AF:
+ cmp dword ptr [ebp-36], 3
+-jne .Lt_05AF
+-.Lt_05B0:
++jne .Lt_05B2
++.Lt_05B3:
+ sub esp, 12
+ push 0
+ push 16
+-push offset Lt_05B1
++push offset Lt_05B4
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_05AF:
+-.Lt_05A4:
++.Lt_05B2:
++.Lt_05A7:
+ sub esp, 12
+ push 27
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_05B3
++je .Lt_05B6
+ sub esp, 12
+ push 0
+ push 23
+-push offset Lt_05B4
++push offset Lt_05B7
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_05B3:
+-.Lt_05B2:
++.Lt_05B6:
++.Lt_05B5:
+ sub esp, 12
+ push 0
+ push 3
+-push offset Lt_058E
++push offset Lt_0591
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11902,32 +11941,32 @@ add esp, 32
+ call FBGETCPUFAMILY
+ mov dword ptr [ebp-36], eax
+ cmp dword ptr [ebp-36], 0
+-je .Lt_05B8
+-.Lt_05B9:
++je .Lt_05BB
++.Lt_05BC:
+ cmp dword ptr [ebp-36], 1
+-jne .Lt_05B7
+-.Lt_05B8:
++jne .Lt_05BA
++.Lt_05BB:
+ sub esp, 12
+ push 9
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-jne .Lt_05BB
++jne .Lt_05BE
+ sub esp, 12
+ push 0
+ push 24
+-push offset Lt_05BC
++push offset Lt_05BF
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_05BB:
++.Lt_05BE:
++.Lt_05BD:
+ .Lt_05BA:
+-.Lt_05B7:
+-.Lt_05B5:
+-.Lt_05A2:
+-.Lt_0571:
++.Lt_05B8:
++.Lt_05A5:
++.Lt_0574:
+ sub esp, 12
+ push 0
+ push 2
+@@ -11954,7 +11993,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 3
+-push offset Lt_05BD
++push offset Lt_05C0
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -11963,7 +12002,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 5
+-push offset Lt_05BE
++push offset Lt_05C1
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -12004,31 +12043,31 @@ call FBGETOPTION
+ add esp, 16
+ mov dword ptr [ebp-32], eax
+ cmp dword ptr [ebp-32], 1
+-jne .Lt_05C1
+-.Lt_05C2:
++jne .Lt_05C4
++.Lt_05C5:
+ sub esp, 4
+ lea eax, [ebp-16]
+ push eax
+ push 3
+-push offset Lt_05C3
++push offset Lt_05C6
+ call FBCRUNBIN
+ add esp, 16
+ mov dword ptr [ebp-4], eax
+-jmp .Lt_05BF
+-.Lt_05C1:
++jmp .Lt_05C2
++.Lt_05C4:
+ cmp dword ptr [ebp-32], 2
+-jne .Lt_05C4
+-.Lt_05C5:
++jne .Lt_05C7
++.Lt_05C8:
+ sub esp, 4
+ lea eax, [ebp-16]
+ push eax
+ push 4
+-push offset Lt_05C6
++push offset Lt_05C9
+ call FBCRUNBIN
+ add esp, 16
+ mov dword ptr [ebp-4], eax
+-.Lt_05C4:
+-.Lt_05BF:
++.Lt_05C7:
++.Lt_05C2:
+ sub esp, 12
+ lea eax, [ebp-28]
+ push eax
+@@ -12039,7 +12078,7 @@ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_056E:
++.Lt_0571:
+ mov eax, dword ptr [ebp-4]
+ mov esp, ebp
+ pop ebp
+@@ -12051,36 +12090,36 @@ HCOMPILESTAGE2MODULES:
+ push ebp
+ mov ebp, esp
+ sub esp, 8
+-.Lt_05C7:
++.Lt_05CA:
+ sub esp, 12
+ lea eax, [FBC+72]
+ push eax
+ call LISTGETHEAD
+ add esp, 16
+ mov dword ptr [ebp-4], eax
+-.Lt_05C9:
++.Lt_05CC:
+ cmp dword ptr [ebp-4], 0
+-je .Lt_05CA
++je .Lt_05CD
+ sub esp, 12
+ push dword ptr [ebp-4]
+ call HCOMPILESTAGE2MODULE
+ add esp, 16
+ test eax, eax
+-jne .Lt_05CC
++jne .Lt_05CF
+ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_05CC:
+-.Lt_05CB:
++.Lt_05CF:
++.Lt_05CE:
+ sub esp, 12
+ push dword ptr [ebp-4]
+ call LISTGETNEXT
+ add esp, 16
+ mov dword ptr [ebp-4], eax
+-jmp .Lt_05C9
+-.Lt_05CA:
+-.Lt_05C8:
++jmp .Lt_05CC
++.Lt_05CD:
++.Lt_05CB:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -12092,101 +12131,101 @@ push ebp
+ mov ebp, esp
+ sub esp, 56
+ mov dword ptr [ebp-4], 0
+-.Lt_05CD:
++.Lt_05D0:
+ mov dword ptr [ebp-16], 0
+ mov dword ptr [ebp-12], 0
+ mov dword ptr [ebp-8], 0
+ call FBGETCPUFAMILY
+ mov dword ptr [ebp-56], eax
+ cmp dword ptr [ebp-56], 0
+-jne .Lt_05D1
+-.Lt_05D2:
++jne .Lt_05D4
++.Lt_05D5:
+ sub esp, 12
+ push 3
+ call FBGETOPTION
+ add esp, 16
+ cmp eax, 7
+-jne .Lt_05D4
++jne .Lt_05D7
+ sub esp, 12
+ push 0
+ push 12
+-push offset Lt_05D5
++push offset Lt_05D8
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-jmp .Lt_05D3
+-.Lt_05D4:
++jmp .Lt_05D6
++.Lt_05D7:
+ sub esp, 12
+ push 0
+ push 6
+-push offset Lt_05D6
++push offset Lt_05D9
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_05D3:
+-jmp .Lt_05CF
+-.Lt_05D1:
++.Lt_05D6:
++jmp .Lt_05D2
++.Lt_05D4:
+ cmp dword ptr [ebp-56], 1
+-jne .Lt_05D7
+-.Lt_05D8:
++jne .Lt_05DA
++.Lt_05DB:
+ sub esp, 12
+ push 3
+ call FBGETOPTION
+ add esp, 16
+ cmp eax, 7
+-jne .Lt_05DA
++jne .Lt_05DD
+ sub esp, 12
+ push 0
+ push 14
+-push offset Lt_05DB
++push offset Lt_05DE
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-jmp .Lt_05D9
+-.Lt_05DA:
++jmp .Lt_05DC
++.Lt_05DD:
+ sub esp, 12
+ push 0
+ push 6
+-push offset Lt_05DC
++push offset Lt_05DF
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_05D9:
+-.Lt_05D7:
+-.Lt_05CF:
++.Lt_05DC:
++.Lt_05DA:
++.Lt_05D2:
+ sub esp, 12
+ push 12
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-jne .Lt_05DE
++jne .Lt_05E1
+ sub esp, 12
+ push 3
+ call FBGETOPTION
+ add esp, 16
+ cmp eax, 7
+-je .Lt_05E0
++je .Lt_05E3
+ sub esp, 12
+ push 0
+ push 24
+-push offset Lt_05E1
++push offset Lt_05E4
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
++.Lt_05E3:
++.Lt_05E2:
++.Lt_05E1:
+ .Lt_05E0:
+-.Lt_05DF:
+-.Lt_05DE:
+-.Lt_05DD:
+ sub esp, 12
+ push 0
+ push 2
+@@ -12213,7 +12252,7 @@ add esp, 32
+ sub esp, 12
+ push 0
+ push 3
+-push offset Lt_05BD
++push offset Lt_05C0
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -12233,7 +12272,7 @@ push -1
+ mov eax, dword ptr [ebp+8]
+ push dword ptr [eax+12]
+ push 5
+-push offset Lt_05BE
++push offset Lt_05C1
+ mov dword ptr [ebp-28], 0
+ mov dword ptr [ebp-24], 0
+ mov dword ptr [ebp-20], 0
+@@ -12280,35 +12319,35 @@ sub esp, 4
+ lea eax, [ebp-16]
+ push eax
+ push 0
+-push offset Lt_05E5
++push offset Lt_05E8
+ call FBCRUNBIN
+ add esp, 16
+ test eax, eax
+-jne .Lt_05E7
++jne .Lt_05EA
+ sub esp, 12
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-jmp .Lt_05CE
+-.Lt_05E7:
+-.Lt_05E6:
++jmp .Lt_05D1
++.Lt_05EA:
++.Lt_05E9:
+ cmp dword ptr [FBC+52], 0
+-jne .Lt_05E9
++jne .Lt_05EC
+ sub esp, 12
+ mov eax, dword ptr [ebp+8]
+ push dword ptr [eax+12]
+ call FBCADDTEMP
+ add esp, 16
+-.Lt_05E9:
+-.Lt_05E8:
++.Lt_05EC:
++.Lt_05EB:
+ mov dword ptr [ebp-4], -1
+ sub esp, 12
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_05CE:
++.Lt_05D1:
+ mov eax, dword ptr [ebp-4]
+ mov esp, ebp
+ pop ebp
+@@ -12320,36 +12359,36 @@ HASSEMBLEMODULES:
+ push ebp
+ mov ebp, esp
+ sub esp, 8
+-.Lt_05EA:
++.Lt_05ED:
+ sub esp, 12
+ lea eax, [FBC+72]
+ push eax
+ call LISTGETHEAD
+ add esp, 16
+ mov dword ptr [ebp-4], eax
+-.Lt_05EC:
++.Lt_05EF:
+ cmp dword ptr [ebp-4], 0
+-je .Lt_05ED
++je .Lt_05F0
+ sub esp, 12
+ push dword ptr [ebp-4]
+ call HASSEMBLEMODULE
+ add esp, 16
+ test eax, eax
+-jne .Lt_05EF
++jne .Lt_05F2
+ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_05EF:
+-.Lt_05EE:
++.Lt_05F2:
++.Lt_05F1:
+ sub esp, 12
+ push dword ptr [ebp-4]
+ call LISTGETNEXT
+ add esp, 16
+ mov dword ptr [ebp-4], eax
+-jmp .Lt_05EC
+-.Lt_05ED:
+-.Lt_05EB:
++jmp .Lt_05EF
++.Lt_05F0:
++.Lt_05EE:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -12362,11 +12401,11 @@ mov ebp, esp
+ sub esp, 100
+ push ebx
+ mov dword ptr [ebp-4], 0
+-.Lt_05F0:
++.Lt_05F3:
+ sub esp, 12
+ push 0
+ push 37
+-push offset Lt_05F2
++push offset Lt_05F5
+ push -1
+ lea eax, [ebp-16]
+ push eax
+@@ -12471,25 +12510,25 @@ sub esp, 4
+ lea eax, [ebp-16]
+ push eax
+ push 7
+-push offset Lt_05F9
++push offset Lt_05FC
+ call FBCRUNBIN
+ add esp, 16
+ mov dword ptr [ebp-4], eax
+ cmp dword ptr [FBC+52], 0
+-jne .Lt_05FB
++jne .Lt_05FE
+ sub esp, 12
+ mov eax, dword ptr [ebp+8]
+ push dword ptr [eax+12]
+ call FBCADDTEMP
+ add esp, 16
+-.Lt_05FB:
+-.Lt_05FA:
++.Lt_05FE:
++.Lt_05FD:
+ sub esp, 12
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_05F1:
++.Lt_05F4:
+ mov eax, dword ptr [ebp-4]
+ pop ebx
+ mov esp, ebp
+@@ -12502,36 +12541,36 @@ HASSEMBLERCS:
+ push ebp
+ mov ebp, esp
+ sub esp, 8
+-.Lt_05FC:
++.Lt_05FF:
+ sub esp, 12
+ lea eax, [FBC+104]
+ push eax
+ call LISTGETHEAD
+ add esp, 16
+ mov dword ptr [ebp-4], eax
+-.Lt_05FE:
++.Lt_0601:
+ cmp dword ptr [ebp-4], 0
+-je .Lt_05FF
++je .Lt_0602
+ sub esp, 12
+ push dword ptr [ebp-4]
+ call HASSEMBLERC
+ add esp, 16
+ test eax, eax
+-jne .Lt_0601
++jne .Lt_0604
+ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_0601:
+-.Lt_0600:
++.Lt_0604:
++.Lt_0603:
+ sub esp, 12
+ push dword ptr [ebp-4]
+ call LISTGETNEXT
+ add esp, 16
+ mov dword ptr [ebp-4], eax
+-jmp .Lt_05FE
+-.Lt_05FF:
+-.Lt_05FD:
++jmp .Lt_0601
++.Lt_0602:
++.Lt_0600:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -12542,7 +12581,7 @@ HASSEMBLEXPM:
+ push ebp
+ mov ebp, esp
+ sub esp, 8
+-.Lt_0602:
++.Lt_0605:
+ sub esp, 8
+ push -1
+ lea eax, [FBC+136]
+@@ -12550,36 +12589,36 @@ push eax
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jle .Lt_0605
++jle .Lt_0608
+ sub esp, 12
+ push 2
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_0607
++je .Lt_060A
+ sub esp, 12
+ lea eax, [FBC+136]
+ push eax
+ call HCOMPILESTAGE2MODULE
+ add esp, 16
+-.Lt_0607:
+-.Lt_0606:
++.Lt_060A:
++.Lt_0609:
+ sub esp, 12
+ lea eax, [FBC+136]
+ push eax
+ call HASSEMBLEMODULE
+ add esp, 16
+ test eax, eax
+-jne .Lt_0609
++jne .Lt_060C
+ sub esp, 12
+ push 1
+ call FBCEND
+ add esp, 16
+-.Lt_0609:
++.Lt_060C:
++.Lt_060B:
+ .Lt_0608:
+-.Lt_0605:
+-.Lt_0604:
+-.Lt_0603:
++.Lt_0607:
++.Lt_0606:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -12591,7 +12630,7 @@ push ebp
+ mov ebp, esp
+ sub esp, 40
+ mov dword ptr [ebp-4], 0
+-.Lt_060A:
++.Lt_060D:
+ sub esp, 12
+ lea eax, [ebp-24]
+ push eax
+@@ -12621,11 +12660,11 @@ add esp, 32
+ lea eax, [ebp-36]
+ mov dword ptr [ebp-12], eax
+ cmp dword ptr [FBC+56], 0
+-je .Lt_060D
++je .Lt_0610
+ sub esp, 4
+ push 2
+ push 10
+-push offset Lt_060E
++push offset Lt_0611
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -12639,8 +12678,8 @@ push eax
+ push 0
+ call fb_PrintString
+ add esp, 16
+-.Lt_060D:
+-.Lt_060C:
++.Lt_0610:
++.Lt_060F:
+ call fb_FileFree
+ mov dword ptr [ebp-40], eax
+ sub esp, 8
+@@ -12654,7 +12693,7 @@ push eax
+ call fb_FileOpen
+ add esp, 32
+ test eax, eax
+-je .Lt_0610
++je .Lt_0613
+ sub esp, 12
+ lea eax, [ebp-36]
+ push eax
+@@ -12665,15 +12704,15 @@ lea eax, [ebp-24]
+ push eax
+ call _ZN9FBCIOFILED1Ev
+ add esp, 16
+-jmp .Lt_060B
+-.Lt_0610:
+-.Lt_060F:
++jmp .Lt_060E
++.Lt_0613:
++.Lt_0612:
+ sub esp, 12
+ push dword ptr [ebp-40]
+ call fb_FileClose
+ add esp, 16
+ test eax, eax
+-je .Lt_0611
++je .Lt_0614
+ push 0
+ push 0
+ push offset Lt_007E
+@@ -12681,16 +12720,16 @@ push 3101
+ call fb_ErrorThrowAt
+ add esp, 16
+ jmp eax
+-.Lt_0611:
++.Lt_0614:
+ cmp dword ptr [FBC+40], 0
+-jne .Lt_0613
++jne .Lt_0616
+ sub esp, 12
+ lea eax, [ebp-24]
+ push eax
+ call FBCADDTEMP
+-add esp, 16
+-.Lt_0613:
+-.Lt_0612:
++add esp, 16
++.Lt_0616:
++.Lt_0615:
+ sub esp, 4
+ push -1
+ push 0
+@@ -12703,14 +12742,14 @@ push 2
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_0615
++je .Lt_0618
+ sub esp, 12
+ lea eax, [ebp-24]
+ push eax
+ call HCOMPILESTAGE2MODULE
+ add esp, 16
+-.Lt_0615:
+-.Lt_0614:
++.Lt_0618:
++.Lt_0617:
+ sub esp, 12
+ lea eax, [ebp-24]
+ push eax
+@@ -12727,7 +12766,7 @@ lea eax, [ebp-24]
+ push eax
+ call _ZN9FBCIOFILED1Ev
+ add esp, 16
+-.Lt_060B:
++.Lt_060E:
+ mov eax, dword ptr [ebp-4]
+ mov esp, ebp
+ pop ebp
+@@ -12741,7 +12780,7 @@ mov ebp, esp
+ sub esp, 84
+ push ebx
+ mov dword ptr [ebp-4], 0
+-.Lt_0616:
++.Lt_0619:
+ call HSETOUTNAME
+ sub esp, 12
+ lea eax, [FBC+428]
+@@ -12752,9 +12791,9 @@ push eax
+ call fb_FileKill
+ add esp, 16
+ test eax, eax
+-je .Lt_0619
+-.Lt_0619:
+-.Lt_0618:
++je .Lt_061C
++.Lt_061C:
++.Lt_061B:
+ sub esp, 12
+ push 0
+ push -1
+@@ -12767,7 +12806,7 @@ push 261
+ lea eax, [FBC+428]
+ push eax
+ push 7
+-push offset Lt_061B
++push offset Lt_061E
+ mov dword ptr [ebp-28], 0
+ mov dword ptr [ebp-24], 0
+ mov dword ptr [ebp-20], 0
+@@ -12797,21 +12836,21 @@ mov ebx, eax
+ call FBISCROSSCOMP
+ not eax
+ and ebx, eax
+-je .Lt_061F
++je .Lt_0622
+ call HCOMPILEFBCTINF
+ test eax, eax
+-je .Lt_0621
++je .Lt_0624
+ sub esp, 12
+ push 0
+ push 15
+-push offset Lt_0624
++push offset Lt_0627
+ push -1
+ lea eax, [ebp-16]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_0621:
+-.Lt_0620:
++.Lt_0624:
++.Lt_0623:
+ sub esp, 12
+ mov dword ptr [ebp-56], 0
+ mov dword ptr [ebp-52], 0
+@@ -12833,17 +12872,17 @@ lea eax, [ebp-56]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_061F:
+-.Lt_061E:
++.Lt_0622:
++.Lt_0621:
+ sub esp, 12
+ lea eax, [FBC+188]
+ push eax
+ call LISTGETHEAD
+ add esp, 16
+ mov dword ptr [ebp-44], eax
+-.Lt_0626:
++.Lt_0629:
+ cmp dword ptr [ebp-44], 0
+-je .Lt_0627
++je .Lt_062A
+ sub esp, 12
+ push 0
+ push -1
+@@ -12851,7 +12890,7 @@ sub esp, 8
+ push -1
+ sub esp, 12
+ push 3
+-push offset Lt_05BD
++push offset Lt_05C0
+ push -1
+ sub esp, 4
+ push -1
+@@ -12895,13 +12934,13 @@ push dword ptr [ebp-44]
+ call LISTGETNEXT
+ add esp, 16
+ mov dword ptr [ebp-44], eax
+-jmp .Lt_0626
+-.Lt_0627:
++jmp .Lt_0629
++.Lt_062A:
+ sub esp, 4
+ lea eax, [ebp-16]
+ push eax
+ push 1
+-push offset Lt_062B
++push offset Lt_062E
+ call FBCRUNBIN
+ add esp, 16
+ mov dword ptr [ebp-4], eax
+@@ -12910,7 +12949,7 @@ lea eax, [ebp-16]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_0617:
++.Lt_061A:
+ mov eax, dword ptr [ebp-4]
+ pop ebx
+ mov esp, ebp
+@@ -12923,7 +12962,7 @@ HSETDEFAULTLIBPATHS:
+ push ebp
+ mov ebp, esp
+ sub esp, 40
+-.Lt_062C:
++.Lt_062F:
+ sub esp, 12
+ mov dword ptr [ebp-12], 0
+ mov dword ptr [ebp-8], 0
+@@ -12968,7 +13007,7 @@ push eax
+ call fb_StrDelete
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0630
++push offset Lt_0633
+ call FBCADDLIBPATHFOR
+ add esp, 16
+ sub esp, 12
+@@ -12977,24 +13016,24 @@ call FBGETOPTION
+ add esp, 16
+ mov dword ptr [ebp-28], eax
+ cmp dword ptr [ebp-28], 3
+-jne .Lt_0633
+-.Lt_0634:
+-sub esp, 12
+-push offset Lt_0635
+-call FBCADDLIBPATHFOR
+-add esp, 16
+-jmp .Lt_0631
+-.Lt_0633:
+-cmp dword ptr [ebp-28], 0
+ jne .Lt_0636
+ .Lt_0637:
+ sub esp, 12
+ push offset Lt_0638
+ call FBCADDLIBPATHFOR
+ add esp, 16
++jmp .Lt_0634
+ .Lt_0636:
+-.Lt_0631:
+-.Lt_062D:
++cmp dword ptr [ebp-28], 0
++jne .Lt_0639
++.Lt_063A:
++sub esp, 12
++push offset Lt_063B
++call FBCADDLIBPATHFOR
++add esp, 16
++.Lt_0639:
++.Lt_0634:
++.Lt_0630:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -13005,7 +13044,7 @@ FBCADDDEFLIB:
+ push ebp
+ mov ebp, esp
+ sub esp, 24
+-.Lt_0639:
++.Lt_063C:
+ sub esp, 4
+ push -1
+ mov dword ptr [ebp-12], 0
+@@ -13031,7 +13070,7 @@ lea eax, [ebp-12]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_063A:
++.Lt_063D:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -13045,7 +13084,7 @@ sub esp, 24
+ mov dword ptr [ebp-12], 0
+ mov dword ptr [ebp-8], 0
+ mov dword ptr [ebp-4], 0
+-.Lt_063C:
++.Lt_063F:
+ mov dword ptr [ebp-24], 0
+ mov dword ptr [ebp-20], 0
+ mov dword ptr [ebp-16], 0
+@@ -13054,35 +13093,35 @@ push 25
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_063F
++je .Lt_0642
+ sub esp, 12
+ push 0
+ push 3
+-push offset Lt_03C1
++push offset Lt_03C4
+ push -1
+ lea eax, [ebp-24]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_063F:
+-.Lt_063E:
++.Lt_0642:
++.Lt_0641:
+ sub esp, 12
+ push 27
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_0641
++je .Lt_0644
+ sub esp, 12
+ push 0
+ push 4
+-push offset Lt_03DB
++push offset Lt_03DE
+ push -1
+ lea eax, [ebp-24]
+ push eax
+ call fb_StrConcatAssign
+ add esp, 32
+-.Lt_0641:
+-.Lt_0640:
++.Lt_0644:
++.Lt_0643:
+ sub esp, 12
+ push 0
+ push -1
+@@ -13098,7 +13137,7 @@ lea eax, [ebp-24]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_063D:
++.Lt_0640:
+ sub esp, 12
+ lea eax, [ebp-12]
+ push eax
+@@ -13115,7 +13154,7 @@ push ebp
+ mov ebp, esp
+ sub esp, 68
+ push ebx
+-.Lt_0642:
++.Lt_0645:
+ sub esp, 12
+ mov dword ptr [ebp-24], 0
+ mov dword ptr [ebp-20], 0
+@@ -13154,7 +13193,7 @@ push 26
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_0647
++je .Lt_064A
+ sub esp, 12
+ mov dword ptr [ebp-48], 0
+ mov dword ptr [ebp-44], 0
+@@ -13166,7 +13205,7 @@ push -1
+ call HGETFBLIBNAMESUFFIX
+ push eax
+ push 6
+-push offset Lt_0648
++push offset Lt_064B
+ mov dword ptr [ebp-36], 0
+ mov dword ptr [ebp-32], 0
+ mov dword ptr [ebp-28], 0
+@@ -13193,25 +13232,25 @@ push 3
+ call FBGETOPTION
+ add esp, 16
+ mov dword ptr [ebp-52], eax
+-jmp .Lt_064C
+-.Lt_064E:
++jmp .Lt_064F
++.Lt_0651:
+ sub esp, 12
+-push offset Lt_064F
++push offset Lt_0652
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0650
++push offset Lt_0653
+ call FBCADDDEFLIB
+ add esp, 16
+-jmp .Lt_064B
+-.Lt_0651:
++jmp .Lt_064E
++.Lt_0654:
+ sub esp, 12
+ mov dword ptr [ebp-64], 0
+ mov dword ptr [ebp-60], 0
+ mov dword ptr [ebp-56], 0
+ push 0
+ push 15
+-push offset Lt_0652
++push offset Lt_0655
+ push -1
+ lea eax, [ebp-64]
+ push eax
+@@ -13227,51 +13266,51 @@ push eax
+ call fb_StrDelete
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0654
++push offset Lt_0657
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0655
++push offset Lt_0658
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0656
++push offset Lt_0659
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0657
++push offset Lt_065A
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0658
++push offset Lt_065B
+ call FBCADDDEFLIB
+ add esp, 16
+-jmp .Lt_064B
+-.Lt_064C:
++jmp .Lt_064E
++.Lt_064F:
+ cmp dword ptr [ebp-52], 8
+-ja .Lt_064B
++ja .Lt_064E
+ mov eax, dword ptr [ebp-52]
+-jmp dword ptr [.LT_0659+eax*4]
+-.LT_0659:
+-.int .Lt_064E
+-.int .Lt_064E
+-.int .Lt_0651
+-.int .Lt_064B
+-.int .Lt_064B
+-.int .Lt_0651
+-.int .Lt_0651
++jmp dword ptr [.LT_065C+eax*4]
++.LT_065C:
+ .int .Lt_0651
+ .int .Lt_0651
+-.Lt_064B:
+-.Lt_0647:
+-.Lt_0646:
++.int .Lt_0654
++.int .Lt_064E
++.int .Lt_064E
++.int .Lt_0654
++.int .Lt_0654
++.int .Lt_0654
++.int .Lt_0654
++.Lt_064E:
++.Lt_064A:
++.Lt_0649:
+ sub esp, 12
+ push 3
+ call FBGETOPTION
+ add esp, 16
+ mov dword ptr [ebp-28], eax
+-jmp .Lt_065B
+-.Lt_065D:
++jmp .Lt_065E
++.Lt_0660:
+ sub esp, 12
+ push offset Lt_0037
+ call FBCADDDEFLIB
+@@ -13281,11 +13320,11 @@ push offset Lt_0254
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_065E
++push offset Lt_0661
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_065F
++push offset Lt_0662
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+@@ -13293,43 +13332,43 @@ push 17
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_0661
++je .Lt_0664
+ sub esp, 12
+-push offset Lt_0662
++push offset Lt_0665
+ call FBCADDDEFLIB
+ add esp, 16
+-.Lt_0661:
+-.Lt_0660:
+-jmp .Lt_065A
++.Lt_0664:
+ .Lt_0663:
++jmp .Lt_065D
++.Lt_0666:
+ sub esp, 12
+ push offset Lt_0037
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0664
++push offset Lt_0667
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0665
++push offset Lt_0668
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0666
++push offset Lt_0669
+ call FBCADDDEFLIB
+ add esp, 16
+-jmp .Lt_065A
+-.Lt_0667:
++jmp .Lt_065D
++.Lt_066A:
+ sub esp, 12
+ push offset Lt_0037
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0372
++push offset Lt_0375
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_03B8
++push offset Lt_03BB
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+@@ -13337,44 +13376,44 @@ push 25
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_0669
++je .Lt_066C
+ sub esp, 12
+-push offset Lt_0665
++push offset Lt_0668
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_066A
++push offset Lt_066D
+ call FBCADDDEFLIB
+ add esp, 16
+-.Lt_0669:
+-.Lt_0668:
+-jmp .Lt_065A
++.Lt_066C:
+ .Lt_066B:
++jmp .Lt_065D
++.Lt_066E:
+ sub esp, 12
+ push offset Lt_0037
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0665
++push offset Lt_0668
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0372
++push offset Lt_0375
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_03B8
++push offset Lt_03BB
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0666
++push offset Lt_0669
+ call FBCADDDEFLIB
+ add esp, 16
+-jmp .Lt_065A
+-.Lt_066C:
++jmp .Lt_065D
++.Lt_066F:
+ sub esp, 8
+ push -1
+-push offset Lt_066D
++push offset Lt_0670
+ call FBCFINDLIBFILE
+ add esp, 4
+ push eax
+@@ -13386,7 +13425,7 @@ shr eax, 1
+ sbb eax, eax
+ sub esp, 8
+ push -1
+-push offset Lt_066E
++push offset Lt_0671
+ mov ebx, eax
+ call FBCFINDLIBFILE
+ add esp, 4
+@@ -13398,28 +13437,28 @@ setg al
+ shr eax, 1
+ sbb eax, eax
+ or ebx, eax
+-je .Lt_0670
++je .Lt_0673
+ sub esp, 12
+-push offset Lt_0671
++push offset Lt_0674
+ call FBCADDDEFLIB
+ add esp, 16
+-jmp .Lt_066F
+-.Lt_0670:
++jmp .Lt_0672
++.Lt_0673:
+ sub esp, 12
+-push offset Lt_0666
++push offset Lt_0669
+ call FBCADDDEFLIB
+ add esp, 16
+-.Lt_066F:
++.Lt_0672:
+ sub esp, 12
+-push offset Lt_03B8
++push offset Lt_03BB
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0672
++push offset Lt_0675
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0665
++push offset Lt_0668
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+@@ -13428,7 +13467,7 @@ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 8
+ push -1
+-push offset Lt_0673
++push offset Lt_0676
+ call FBCFINDLIBFILE
+ add esp, 4
+ push eax
+@@ -13440,7 +13479,7 @@ shr eax, 1
+ sbb eax, eax
+ sub esp, 8
+ push -1
+-push offset Lt_0674
++push offset Lt_0677
+ mov ebx, eax
+ call FBCFINDLIBFILE
+ add esp, 4
+@@ -13452,74 +13491,74 @@ setg al
+ shr eax, 1
+ sbb eax, eax
+ or ebx, eax
+-je .Lt_0676
++je .Lt_0679
+ sub esp, 12
+-push offset Lt_0677
++push offset Lt_067A
+ call FBCADDDEFLIB
+ add esp, 16
+-.Lt_0676:
+-.Lt_0675:
++.Lt_0679:
++.Lt_0678:
+ sub esp, 12
+-push offset Lt_0372
++push offset Lt_0375
+ call FBCADDDEFLIB
+ add esp, 16
+-jmp .Lt_065A
+-.Lt_0678:
+-jmp .Lt_065A
+-.Lt_0679:
++jmp .Lt_065D
++.Lt_067B:
++jmp .Lt_065D
++.Lt_067C:
+ sub esp, 12
+ push offset Lt_0037
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0665
++push offset Lt_0668
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0372
++push offset Lt_0375
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_03B8
++push offset Lt_03BB
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0666
++push offset Lt_0669
+ call FBCADDDEFLIB
+ add esp, 16
+-jmp .Lt_065A
+-.Lt_067A:
++jmp .Lt_065D
++.Lt_067D:
+ sub esp, 12
+ push offset Lt_0037
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_067B
++push offset Lt_067E
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_065E
++push offset Lt_0661
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_065F
++push offset Lt_0662
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_067C
++push offset Lt_067F
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_067D
++push offset Lt_0680
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_067E
++push offset Lt_0681
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 8
+ push -1
+-push offset Lt_0673
++push offset Lt_0676
+ call FBCFINDLIBFILE
+ add esp, 4
+ push eax
+@@ -13531,7 +13570,7 @@ shr eax, 1
+ sbb eax, eax
+ sub esp, 8
+ push -1
+-push offset Lt_067F
++push offset Lt_0682
+ mov ebx, eax
+ call FBCFINDLIBFILE
+ add esp, 4
+@@ -13543,57 +13582,57 @@ setg al
+ shr eax, 1
+ sbb eax, eax
+ or ebx, eax
+-je .Lt_0681
++je .Lt_0684
+ sub esp, 12
+-push offset Lt_0677
++push offset Lt_067A
+ call FBCADDDEFLIB
+ add esp, 16
+-.Lt_0681:
+-.Lt_0680:
++.Lt_0684:
++.Lt_0683:
+ sub esp, 12
+ push 17
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_0683
++je .Lt_0686
+ sub esp, 12
+-push offset Lt_0662
++push offset Lt_0665
+ call FBCADDDEFLIB
+ add esp, 16
+-.Lt_0683:
+-.Lt_0682:
+-jmp .Lt_065A
+-.Lt_0684:
++.Lt_0686:
++.Lt_0685:
++jmp .Lt_065D
++.Lt_0687:
+ sub esp, 12
+ push offset Lt_0037
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0648
++push offset Lt_064B
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0685
++push offset Lt_0688
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0686
++push offset Lt_0689
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0372
++push offset Lt_0375
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0687
++push offset Lt_068A
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_0688
++push offset Lt_068B
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+-push offset Lt_03B8
++push offset Lt_03BB
+ call FBCADDDEFLIB
+ add esp, 16
+ sub esp, 12
+@@ -13601,31 +13640,31 @@ push 17
+ call FBGETOPTION
+ add esp, 16
+ test eax, eax
+-je .Lt_068A
++je .Lt_068D
+ sub esp, 12
+-push offset Lt_0662
++push offset Lt_0665
+ call FBCADDDEFLIB
+ add esp, 16
+-.Lt_068A:
+-.Lt_0689:
+-jmp .Lt_065A
+-.Lt_065B:
++.Lt_068D:
++.Lt_068C:
++jmp .Lt_065D
++.Lt_065E:
+ cmp dword ptr [ebp-28], 8
+-ja .Lt_065A
++ja .Lt_065D
+ mov eax, dword ptr [ebp-28]
+-jmp dword ptr [.LT_068B+eax*4]
+-.LT_068B:
+-.int .Lt_067A
+-.int .Lt_065D
+-.int .Lt_066C
+-.int .Lt_0667
+-.int .Lt_0684
+-.int .Lt_066B
+-.int .Lt_0679
+-.int .Lt_0663
+-.int .Lt_0678
+-.Lt_065A:
+-.Lt_0643:
++jmp dword ptr [.LT_068E+eax*4]
++.LT_068E:
++.int .Lt_067D
++.int .Lt_0660
++.int .Lt_066F
++.int .Lt_066A
++.int .Lt_0687
++.int .Lt_066E
++.int .Lt_067C
++.int .Lt_0666
++.int .Lt_067B
++.Lt_065D:
++.Lt_0646:
+ pop ebx
+ mov esp, ebp
+ pop ebp
+@@ -13637,11 +13676,11 @@ HPRINTOPTIONS:
+ push ebp
+ mov ebp, esp
+ sub esp, 8
+-.Lt_068C:
++.Lt_068F:
+ sub esp, 4
+ push 1
+ push 34
+-push offset Lt_068E
++push offset Lt_0691
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13651,7 +13690,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 12
+-push offset Lt_068F
++push offset Lt_0692
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13661,7 +13700,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 57
+-push offset Lt_0690
++push offset Lt_0693
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13671,7 +13710,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 59
+-push offset Lt_0691
++push offset Lt_0694
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13681,7 +13720,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 35
+-push offset Lt_0692
++push offset Lt_0695
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13691,7 +13730,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 8
+-push offset Lt_0693
++push offset Lt_0696
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13701,7 +13740,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 63
+-push offset Lt_0694
++push offset Lt_0697
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13711,7 +13750,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 49
+-push offset Lt_0695
++push offset Lt_0698
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13721,7 +13760,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 57
+-push offset Lt_0696
++push offset Lt_0699
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13731,7 +13770,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 69
+-push offset Lt_0697
++push offset Lt_069A
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13741,7 +13780,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 48
+-push offset Lt_0698
++push offset Lt_069B
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13751,7 +13790,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 44
+-push offset Lt_0699
++push offset Lt_069C
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13761,7 +13800,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 46
+-push offset Lt_069A
++push offset Lt_069D
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13771,7 +13810,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 41
+-push offset Lt_069B
++push offset Lt_069E
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13781,7 +13820,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 33
+-push offset Lt_069C
++push offset Lt_069F
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13791,7 +13830,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 69
+-push offset Lt_069D
++push offset Lt_06A0
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13801,7 +13840,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 48
+-push offset Lt_069E
++push offset Lt_06A1
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13811,7 +13850,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 41
+-push offset Lt_069F
++push offset Lt_06A2
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13821,7 +13860,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 62
+-push offset Lt_06A0
++push offset Lt_06A3
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13831,7 +13870,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 53
+-push offset Lt_06A1
++push offset Lt_06A4
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13841,7 +13880,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 61
+-push offset Lt_06A2
++push offset Lt_06A5
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13851,7 +13890,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 65
+-push offset Lt_06A3
++push offset Lt_06A6
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13861,7 +13900,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 33
+-push offset Lt_06A4
++push offset Lt_06A7
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13871,7 +13910,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 33
+-push offset Lt_06A5
++push offset Lt_06A8
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13881,7 +13920,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 51
+-push offset Lt_06A6
++push offset Lt_06A9
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13891,7 +13930,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 40
+-push offset Lt_06A7
++push offset Lt_06AA
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13901,7 +13940,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 50
+-push offset Lt_06A8
++push offset Lt_06AB
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13911,7 +13950,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 58
+-push offset Lt_06A9
++push offset Lt_06AC
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13921,7 +13960,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 36
+-push offset Lt_06AA
++push offset Lt_06AD
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13931,7 +13970,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 60
+-push offset Lt_06AB
++push offset Lt_06AE
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13941,7 +13980,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 42
+-push offset Lt_06AC
++push offset Lt_06AF
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13951,7 +13990,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 76
+-push offset Lt_06AD
++push offset Lt_06B0
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13961,7 +14000,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 43
+-push offset Lt_06AE
++push offset Lt_06B1
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13971,7 +14010,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 39
+-push offset Lt_06AF
++push offset Lt_06B2
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13981,7 +14020,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 45
+-push offset Lt_06B0
++push offset Lt_06B3
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -13991,7 +14030,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 55
+-push offset Lt_06B1
++push offset Lt_06B4
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14001,7 +14040,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 63
+-push offset Lt_06B2
++push offset Lt_06B5
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14011,7 +14050,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 78
+-push offset Lt_06B3
++push offset Lt_06B6
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14021,7 +14060,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 74
+-push offset Lt_06B4
++push offset Lt_06B7
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14031,7 +14070,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 50
+-push offset Lt_06B5
++push offset Lt_06B8
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14041,7 +14080,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 44
+-push offset Lt_06B6
++push offset Lt_06B9
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14051,7 +14090,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 80
+-push offset Lt_06B7
++push offset Lt_06BA
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14061,7 +14100,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 67
+-push offset Lt_06B8
++push offset Lt_06BB
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14071,7 +14110,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 47
+-push offset Lt_06B9
++push offset Lt_06BC
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14081,7 +14120,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 53
+-push offset Lt_06BA
++push offset Lt_06BD
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14091,7 +14130,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 51
+-push offset Lt_06BB
++push offset Lt_06BE
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14101,7 +14140,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 69
+-push offset Lt_06BC
++push offset Lt_06BF
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14111,7 +14150,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 44
+-push offset Lt_06BD
++push offset Lt_06C0
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14121,7 +14160,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 65
+-push offset Lt_06BE
++push offset Lt_06C1
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14131,7 +14170,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 48
+-push offset Lt_06BF
++push offset Lt_06C2
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14141,7 +14180,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 60
+-push offset Lt_06C0
++push offset Lt_06C3
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14151,7 +14190,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 47
+-push offset Lt_06C1
++push offset Lt_06C4
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14161,7 +14200,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 41
+-push offset Lt_06C2
++push offset Lt_06C5
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14171,7 +14210,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 66
+-push offset Lt_06C3
++push offset Lt_06C6
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14181,7 +14220,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 73
+-push offset Lt_06C4
++push offset Lt_06C7
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14191,7 +14230,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 75
+-push offset Lt_06C5
++push offset Lt_06C8
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14201,7 +14240,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 47
+-push offset Lt_06C6
++push offset Lt_06C9
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14211,7 +14250,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 47
+-push offset Lt_06C7
++push offset Lt_06CA
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14221,7 +14260,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 29
+-push offset Lt_06C8
++push offset Lt_06CB
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14231,7 +14270,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 61
+-push offset Lt_06C9
++push offset Lt_06CC
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14241,7 +14280,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 40
+-push offset Lt_06CA
++push offset Lt_06CD
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14251,7 +14290,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 70
+-push offset Lt_06CB
++push offset Lt_06CE
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14261,7 +14300,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 39
+-push offset Lt_06CC
++push offset Lt_06CF
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14271,7 +14310,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 72
+-push offset Lt_06CD
++push offset Lt_06D0
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14281,7 +14320,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 39
+-push offset Lt_06CE
++push offset Lt_06D1
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14291,7 +14330,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 58
+-push offset Lt_06CF
++push offset Lt_06D2
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14301,14 +14340,14 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 56
+-push offset Lt_06D0
++push offset Lt_06D3
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+ push 0
+ call fb_PrintString
+ add esp, 16
+-.Lt_068D:
++.Lt_0690:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -14319,7 +14358,7 @@ HPRINTVERSION:
+ push ebp
+ mov ebp, esp
+ sub esp, 72
+-.Lt_06D7:
++.Lt_06DA:
+ mov dword ptr [ebp-12], 0
+ mov dword ptr [ebp-8], 0
+ mov dword ptr [ebp-4], 0
+@@ -14327,7 +14366,7 @@ sub esp, 4
+ push 1
+ sub esp, 4
+ push 5
+-push offset Lt_06DF
++push offset Lt_06E2
+ push -1
+ sub esp, 4
+ push -1
+@@ -14342,14 +14381,14 @@ push eax
+ push -1
+ sub esp, 4
+ push 3
+-push offset Lt_04E2
++push offset Lt_04E5
+ push -1
+ sub esp, 4
+ push -1
+ call FBGETHOSTID
+ push eax
+ push 61
+-push offset Lt_06DE
++push offset Lt_06E1
+ mov dword ptr [ebp-24], 0
+ mov dword ptr [ebp-20], 0
+ mov dword ptr [ebp-16], 0
+@@ -14388,7 +14427,7 @@ add esp, 16
+ sub esp, 4
+ push 1
+ push 55
+-push offset Lt_06E4
++push offset Lt_06E7
+ call fb_StrAllocTempDescZEx
+ add esp, 8
+ push eax
+@@ -14402,7 +14441,7 @@ push eax
+ call fb_StrLen
+ add esp, 16
+ test eax, eax
+-jle .Lt_06E6
++jle .Lt_06E9
+ sub esp, 4
+ push 1
+ lea eax, [ebp-12]
+@@ -14410,14 +14449,14 @@ push eax
+ push 0
+ call fb_PrintString
+ add esp, 16
+-.Lt_06E6:
+-.Lt_06E5:
++.Lt_06E9:
++.Lt_06E8:
+ sub esp, 12
+ lea eax, [ebp-12]
+ push eax
+ call fb_StrDelete
+ add esp, 16
+-.Lt_06D8:
++.Lt_06DB:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -14428,12 +14467,12 @@ _GLOBAL__I:
+ push ebp
+ mov ebp, esp
+ sub esp, 8
+-.Lt_0717:
++.Lt_071A:
+ sub esp, 12
+ push offset FBC
+ call _ZN6FBCCTXC1Ev
+ add esp, 16
+-.Lt_0718:
++.Lt_071B:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -14444,12 +14483,12 @@ _GLOBAL__D:
+ push ebp
+ mov ebp, esp
+ sub esp, 8
+-.Lt_071A:
++.Lt_071D:
+ sub esp, 12
+ push offset FBC
+ call _ZN6FBCCTXD1Ev
+ add esp, 16
+-.Lt_071B:
++.Lt_071E:
+ mov esp, ebp
+ pop ebp
+ ret
+@@ -14950,445 +14989,445 @@ Lt_0342: .ascii "funcptr\0"
+ .balign 4
+ Lt_0345: .ascii "pedantic\0"
+ .balign 4
+-Lt_035A: .ascii "gosub-setjmp\0"
++Lt_035D: .ascii "gosub-setjmp\0"
+ .balign 4
+-Lt_0364: .ascii "a\0"
++Lt_0367: .ascii "a\0"
+ .balign 4
+-Lt_0367: .ascii "arch\0"
++Lt_036A: .ascii "arch\0"
+ .balign 4
+-Lt_036A: .ascii "asm\0"
++Lt_036D: .ascii "asm\0"
+ .balign 4
+-Lt_0372: .ascii "c\0"
++Lt_0375: .ascii "c\0"
+ .balign 4
+-Lt_037D: .ascii "dll\0"
++Lt_0380: .ascii "dll\0"
+ .balign 4
+-Lt_0380: .ascii "dylib\0"
++Lt_0383: .ascii "dylib\0"
+ .balign 4
+-Lt_0387: .ascii "ex\0"
++Lt_038A: .ascii "ex\0"
+ .balign 4
+-Lt_038A: .ascii "exx\0"
++Lt_038D: .ascii "exx\0"
+ .balign 4
+-Lt_038D: .ascii "export\0"
++Lt_0390: .ascii "export\0"
+ .balign 4
+-Lt_0392: .ascii "forcelang\0"
++Lt_0395: .ascii "forcelang\0"
+ .balign 4
+-Lt_0395: .ascii "fpmode\0"
++Lt_0398: .ascii "fpmode\0"
+ .balign 4
+-Lt_0398: .ascii "fpu\0"
++Lt_039B: .ascii "fpu\0"
+ .balign 4
+-Lt_039F: .ascii "gen\0"
++Lt_03A2: .ascii "gen\0"
+ .balign 4
+-Lt_03A4: .ascii "help\0"
++Lt_03A7: .ascii "help\0"
+ .balign 4
+-Lt_03AB: .ascii "include\0"
++Lt_03AE: .ascii "include\0"
+ .balign 4
+-Lt_03B2: .ascii "lang\0"
++Lt_03B5: .ascii "lang\0"
+ .balign 4
+-Lt_03B8: .ascii "m\0"
++Lt_03BB: .ascii "m\0"
+ .balign 4
+-Lt_03BB: .ascii "map\0"
++Lt_03BE: .ascii "map\0"
+ .balign 4
+-Lt_03BE: .ascii "maxerr\0"
++Lt_03C1: .ascii "maxerr\0"
+ .balign 4
+-Lt_03C1: .ascii "mt\0"
++Lt_03C4: .ascii "mt\0"
+ .balign 4
+-Lt_03C6: .ascii "noerrline\0"
++Lt_03C9: .ascii "noerrline\0"
+ .balign 4
+-Lt_03C9: .ascii "nodeflibs\0"
++Lt_03CC: .ascii "nodeflibs\0"
+ .balign 4
+-Lt_03CC: .ascii "noobjinfo\0"
++Lt_03CF: .ascii "noobjinfo\0"
+ .balign 4
+-Lt_03D0: .ascii "o\0"
++Lt_03D3: .ascii "o\0"
+ .balign 4
+-Lt_03DB: .ascii "pic\0"
++Lt_03DE: .ascii "pic\0"
+ .balign 4
+-Lt_03DE: .ascii "pp\0"
++Lt_03E1: .ascii "pp\0"
+ .balign 4
+-Lt_03E1: .ascii "prefix\0"
++Lt_03E4: .ascii "prefix\0"
+ .balign 4
+-Lt_03E4: .ascii "print\0"
++Lt_03E7: .ascii "print\0"
+ .balign 4
+-Lt_03E7: .ascii "profile\0"
++Lt_03EA: .ascii "profile\0"
+ .balign 4
+-Lt_03EE: .ascii "rr\0"
++Lt_03F1: .ascii "rr\0"
+ .balign 4
+-Lt_03F5: .ascii "RR\0"
++Lt_03F8: .ascii "RR\0"
+ .balign 4
+-Lt_03FC: .ascii "showincludes\0"
++Lt_03FF: .ascii "showincludes\0"
+ .balign 4
+-Lt_03FF: .ascii "static\0"
++Lt_0402: .ascii "static\0"
+ .balign 4
+-Lt_0408: .ascii "title\0"
++Lt_040B: .ascii "title\0"
+ .balign 4
+-Lt_040F: .ascii "vec\0"
++Lt_0412: .ascii "vec\0"
+ .balign 4
+-Lt_0412: .ascii "version\0"
++Lt_0415: .ascii "version\0"
+ .balign 4
+-Lt_041B: .ascii "Wa\0"
++Lt_041E: .ascii "Wa\0"
+ .balign 4
+-Lt_041E: .ascii "Wl\0"
++Lt_0421: .ascii "Wl\0"
+ .balign 4
+-Lt_0421: .ascii "Wc\0"
++Lt_0424: .ascii "Wc\0"
+ .balign 4
+-Lt_042C: .ascii "-version\0"
++Lt_042F: .ascii "-version\0"
+ .balign 4
+-Lt_042F: .ascii "-help\0"
++Lt_0432: .ascii "-help\0"
+ .balign 4
+-Lt_044F: .ascii "bas\0"
++Lt_0452: .ascii "bas\0"
+ .balign 4
+-Lt_0456: .ascii "rc\0"
++Lt_0459: .ascii "rc\0"
+ .balign 4
+-Lt_0457: .ascii "res\0"
++Lt_045A: .ascii "res\0"
+ .balign 4
+-Lt_045B: .ascii "xpm\0"
++Lt_045E: .ascii "xpm\0"
+ .balign 4
+-Lt_04C8: .ascii "../\0"
++Lt_04CB: .ascii "../\0"
+ .balign 4
+-Lt_04CD: .ascii "freebasic\0"
++Lt_04D0: .ascii "freebasic\0"
+ .balign 4
+-Lt_04CE: .ascii "bin\0"
++Lt_04D1: .ascii "bin\0"
+ .balign 4
+-Lt_04DC: .ascii ", \0"
++Lt_04DF: .ascii ", \0"
+ .balign 4
+-Lt_04DF: .ascii "bit\0"
++Lt_04E2: .ascii "bit\0"
+ .balign 4
+-Lt_04E2: .ascii " (\0"
++Lt_04E5: .ascii " (\0"
+ .balign 4
+-Lt_04E3: .ascii ")\0"
++Lt_04E6: .ascii ")\0"
+ .balign 4
+-Lt_04E4: .ascii "target:\0"
++Lt_04E7: .ascii "target:\0"
+ .balign 4
+-Lt_04ED: .ascii "unnamed\0"
++Lt_04F0: .ascii "unnamed\0"
+ .balign 4
+-Lt_04F1: .ascii ".asm\0"
++Lt_04F4: .ascii ".asm\0"
+ .balign 4
+-Lt_04F8: .ascii ".c\0"
++Lt_04FB: .ascii ".c\0"
+ .balign 4
+-Lt_04FB: .ascii ".ll\0"
++Lt_04FE: .ascii ".ll\0"
+ .balign 4
+-Lt_0505: .ascii ".pp.bas\0"
++Lt_0508: .ascii ".pp.bas\0"
+ .balign 4
+-Lt_0509: .ascii "compiling: \0"
++Lt_050C: .ascii "compiling: \0"
+ .balign 4
+-Lt_050A: .ascii " -o \0"
++Lt_050D: .ascii " -o \0"
+ .balign 4
+-Lt_050D: .ascii " -pp \0"
++Lt_0510: .ascii " -pp \0"
+ .balign 4
+-Lt_0511: .ascii " (main module)\0"
++Lt_0514: .ascii " (main module)\0"
+ .balign 4
+-Lt_0513: .ascii " (FB compile-time info)\0"
++Lt_0516: .ascii " (FB compile-time info)\0"
+ .balign 4
+-Lt_0535: .ascii "\ndim shared as zstring ptr \0"
++Lt_0538: .ascii "\ndim shared as zstring ptr \0"
+ .balign 4
+-Lt_0537: .ascii "fb_program_icon_data\0"
++Lt_053A: .ascii "fb_program_icon_data\0"
+ .balign 4
+-Lt_0539: .ascii "(0 to ...) = _\n{ _\n\0"
++Lt_053C: .ascii "(0 to ...) = _\n{ _\n\0"
+ .balign 4
+-Lt_053D: .ascii "/* XPM */\0"
++Lt_0540: .ascii "/* XPM */\0"
+ .balign 4
+-Lt_0547: .ascii ", _\n\0"
++Lt_054A: .ascii ", _\n\0"
+ .balign 4
+-Lt_0549: .ascii "\t@\0"
++Lt_054C: .ascii "\t@\0"
+ .balign 4
+-Lt_054F: .ascii " _ \n\0"
++Lt_0552: .ascii " _ \n\0"
+ .balign 4
+-Lt_0551: .ascii "}\n\n\0"
++Lt_0554: .ascii "}\n\n\0"
+ .balign 4
+-Lt_0553: .ascii "extern as zstring ptr ptr fb_program_icon alias \"fb_program_icon\"\n\0"
++Lt_0556: .ascii "extern as zstring ptr ptr fb_program_icon alias \"fb_program_icon\"\n\0"
+ .balign 4
+-Lt_0557: .ascii "dim shared as zstring ptr ptr fb_program_icon = @fb_program_icon_data(0)\n\0"
++Lt_055A: .ascii "dim shared as zstring ptr ptr fb_program_icon = @fb_program_icon_data(0)\n\0"
+ .balign 4
+-Lt_055F: .ascii ".bas\0"
++Lt_0562: .ascii ".bas\0"
+ .balign 4
+-Lt_0562: .ascii "parsing xpm: \0"
++Lt_0565: .ascii "parsing xpm: \0"
+ .balign 4
+-Lt_0579: .ascii "-m32 \0"
++Lt_057C: .ascii "-m32 \0"
+ .balign 4
+-Lt_057C: .ascii "-m64 \0"
++Lt_057F: .ascii "-m64 \0"
+ .balign 4
+-Lt_057F: .ascii "-march=native \0"
++Lt_0582: .ascii "-march=native \0"
+ .balign 4
+-Lt_0580: .ascii "-march=\0"
++Lt_0583: .ascii "-march=\0"
+ .balign 4
+-Lt_0586: .ascii "-fPIC \0"
++Lt_0589: .ascii "-fPIC \0"
+ .balign 4
+-Lt_058B: .ascii "-S -nostdlib -nostdinc -Wall -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable \0"
++Lt_058E: .ascii "-S -nostdlib -nostdinc -Wall -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable \0"
+ .balign 4
+-Lt_058C: .ascii "-Wno-main \0"
++Lt_058F: .ascii "-Wno-main \0"
+ .balign 4
+-Lt_058D: .ascii "-Werror-implicit-function-declaration \0"
++Lt_0590: .ascii "-Werror-implicit-function-declaration \0"
+ .balign 4
+-Lt_058E: .ascii "-O\0"
++Lt_0591: .ascii "-O\0"
+ .balign 4
+-Lt_058F: .ascii "-fno-strict-aliasing \0"
++Lt_0592: .ascii "-fno-strict-aliasing \0"
+ .balign 4
+-Lt_0590: .ascii "-frounding-math \0"
++Lt_0593: .ascii "-frounding-math \0"
+ .balign 4
+-Lt_0591: .ascii "-fno-math-errno \0"
++Lt_0594: .ascii "-fno-math-errno \0"
+ .balign 4
+-Lt_0592: .ascii "-fwrapv \0"
++Lt_0595: .ascii "-fwrapv \0"
+ .balign 4
+-Lt_0593: .ascii "-fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables \0"
++Lt_0596: .ascii "-fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables \0"
+ .balign 4
+-Lt_0596: .ascii "-g \0"
++Lt_0599: .ascii "-g \0"
+ .balign 4
+-Lt_0599: .ascii "-mfpmath=sse -msse2 \0"
++Lt_059C: .ascii "-mfpmath=sse -msse2 \0"
+ .balign 4
+-Lt_05A1: .ascii "-masm=intel \0"
++Lt_05A4: .ascii "-masm=intel \0"
+ .balign 4
+-Lt_05A8: .ascii "-march=x86 \0"
++Lt_05AB: .ascii "-march=x86 \0"
+ .balign 4
+-Lt_05AB: .ascii "-march=x86-64 \0"
++Lt_05AE: .ascii "-march=x86-64 \0"
+ .balign 4
+-Lt_05AE: .ascii "-march=arm \0"
++Lt_05B1: .ascii "-march=arm \0"
+ .balign 4
+-Lt_05B1: .ascii "-march=aarch64 \0"
++Lt_05B4: .ascii "-march=aarch64 \0"
+ .balign 4
+-Lt_05B4: .ascii "-relocation-model=pic \0"
++Lt_05B7: .ascii "-relocation-model=pic \0"
+ .balign 4
+-Lt_05BC: .ascii "--x86-asm-syntax=intel \0"
++Lt_05BF: .ascii "--x86-asm-syntax=intel \0"
+ .balign 4
+-Lt_05BD: .ascii "\" \0"
++Lt_05C0: .ascii "\" \0"
+ .balign 4
+-Lt_05BE: .ascii "-o \"\0"
++Lt_05C1: .ascii "-o \"\0"
+ .balign 4
+-Lt_05C3: .ascii "compiling C\0"
++Lt_05C6: .ascii "compiling C\0"
+ .balign 4
+-Lt_05C6: .ascii "compiling LLVM IR\0"
++Lt_05C9: .ascii "compiling LLVM IR\0"
+ .balign 4
+-Lt_05D5: .ascii "-arch i386 \0"
++Lt_05D8: .ascii "-arch i386 \0"
+ .balign 4
+-Lt_05D6: .ascii "--32 \0"
++Lt_05D9: .ascii "--32 \0"
+ .balign 4
+-Lt_05DB: .ascii "-arch x86_64 \0"
++Lt_05DE: .ascii "-arch x86_64 \0"
+ .balign 4
+-Lt_05DC: .ascii "--64 \0"
++Lt_05DF: .ascii "--64 \0"
+ .balign 4
+-Lt_05E1: .ascii "--strip-local-absolute \0"
++Lt_05E4: .ascii "--strip-local-absolute \0"
+ .balign 4
+-Lt_05E5: .ascii "assembling\0"
++Lt_05E8: .ascii "assembling\0"
+ .balign 4
+-Lt_05F2: .ascii "--output-format=coff --include-dir=.\0"
++Lt_05F5: .ascii "--output-format=coff --include-dir=.\0"
+ .balign 4
+-Lt_05F9: .ascii "compiling rc\0"
++Lt_05FC: .ascii "compiling rc\0"
+ .balign 4
+-Lt_060E: .ascii "creating: \0"
++Lt_0611: .ascii "creating: \0"
+ .balign 4
+-Lt_061B: .ascii "-rsc \"\0"
++Lt_061E: .ascii "-rsc \"\0"
+ .balign 4
+-Lt_0624: .ascii "\"__fb_ct.inf\" \0"
++Lt_0627: .ascii "\"__fb_ct.inf\" \0"
+ .balign 4
+-Lt_062B: .ascii "archiving\0"
++Lt_062E: .ascii "archiving\0"
+ .balign 4
+-Lt_0630: .ascii "libgcc.a\0"
++Lt_0633: .ascii "libgcc.a\0"
+ .balign 4
+-Lt_0635: .ascii "libm.a\0"
++Lt_0638: .ascii "libm.a\0"
+ .balign 4
+-Lt_0638: .ascii "libmingw32.a\0"
++Lt_063B: .ascii "libmingw32.a\0"
+ .balign 4
+-Lt_0648: .ascii "fbgfx\0"
++Lt_064B: .ascii "fbgfx\0"
+ .balign 4
+-Lt_064F: .ascii "gdi32\0"
++Lt_0652: .ascii "gdi32\0"
+ .balign 4
+-Lt_0650: .ascii "winmm\0"
++Lt_0653: .ascii "winmm\0"
+ .balign 4
+-Lt_0652: .ascii "/usr/X11R6/lib\0"
++Lt_0655: .ascii "/usr/X11R6/lib\0"
+ .balign 4
+-Lt_0654: .ascii "X11\0"
++Lt_0657: .ascii "X11\0"
+ .balign 4
+-Lt_0655: .ascii "Xext\0"
++Lt_0658: .ascii "Xext\0"
+ .balign 4
+-Lt_0656: .ascii "Xpm\0"
++Lt_0659: .ascii "Xpm\0"
+ .balign 4
+-Lt_0657: .ascii "Xrandr\0"
++Lt_065A: .ascii "Xrandr\0"
+ .balign 4
+-Lt_0658: .ascii "Xrender\0"
++Lt_065B: .ascii "Xrender\0"
+ .balign 4
+-Lt_065E: .ascii "kernel32\0"
++Lt_0661: .ascii "kernel32\0"
+ .balign 4
+-Lt_065F: .ascii "user32\0"
++Lt_0662: .ascii "user32\0"
+ .balign 4
+-Lt_0662: .ascii "gmon\0"
++Lt_0665: .ascii "gmon\0"
+ .balign 4
+-Lt_0664: .ascii "System\0"
++Lt_0667: .ascii "System\0"
+ .balign 4
+-Lt_0665: .ascii "pthread\0"
++Lt_0668: .ascii "pthread\0"
+ .balign 4
+-Lt_0666: .ascii "ncurses\0"
++Lt_0669: .ascii "ncurses\0"
+ .balign 4
+-Lt_066A: .ascii "socket\0"
++Lt_066D: .ascii "socket\0"
+ .balign 4
+-Lt_066D: .ascii "libtinfo.a\0"
++Lt_0670: .ascii "libtinfo.a\0"
+ .balign 4
+-Lt_066E: .ascii "libtinfo.so\0"
++Lt_0671: .ascii "libtinfo.so\0"
+ .balign 4
+-Lt_0671: .ascii "tinfo\0"
++Lt_0674: .ascii "tinfo\0"
+ .balign 4
+-Lt_0672: .ascii "dl\0"
++Lt_0675: .ascii "dl\0"
+ .balign 4
+-Lt_0673: .ascii "libgcc_eh.a\0"
++Lt_0676: .ascii "libgcc_eh.a\0"
+ .balign 4
+-Lt_0674: .ascii "libgcc_eh.so\0"
++Lt_0677: .ascii "libgcc_eh.so\0"
+ .balign 4
+-Lt_0677: .ascii "gcc_eh\0"
++Lt_067A: .ascii "gcc_eh\0"
+ .balign 4
+-Lt_067B: .ascii "msvcrt\0"
++Lt_067E: .ascii "msvcrt\0"
+ .balign 4
+-Lt_067C: .ascii "mingw32\0"
++Lt_067F: .ascii "mingw32\0"
+ .balign 4
+-Lt_067D: .ascii "mingwex\0"
++Lt_0680: .ascii "mingwex\0"
+ .balign 4
+-Lt_067E: .ascii "moldname\0"
++Lt_0681: .ascii "moldname\0"
+ .balign 4
+-Lt_067F: .ascii "libgcc_eh.dll.a\0"
++Lt_0682: .ascii "libgcc_eh.dll.a\0"
+ .balign 4
+-Lt_0685: .ascii "openxdk\0"
++Lt_0688: .ascii "openxdk\0"
+ .balign 4
+-Lt_0686: .ascii "hal\0"
++Lt_0689: .ascii "hal\0"
+ .balign 4
+-Lt_0687: .ascii "usb\0"
++Lt_068A: .ascii "usb\0"
+ .balign 4
+-Lt_0688: .ascii "xboxkrnl\0"
++Lt_068B: .ascii "xboxkrnl\0"
+ .balign 4
+-Lt_068E: .ascii "usage: fbc [options] <input files>\0"
++Lt_0691: .ascii "usage: fbc [options] <input files>\0"
+ .balign 4
+-Lt_068F: .ascii "input files:\0"
++Lt_0692: .ascii "input files:\0"
+ .balign 4
+-Lt_0690: .ascii " *.a = static library, *.o = object file, *.bas = source\0"
++Lt_0693: .ascii " *.a = static library, *.o = object file, *.bas = source\0"
+ .balign 4
+-Lt_0691: .ascii " *.rc = resource script, *.res = compiled resource (win32)\0"
++Lt_0694: .ascii " *.rc = resource script, *.res = compiled resource (win32)\0"
+ .balign 4
+-Lt_0692: .ascii " *.xpm = icon resource (*nix/*bsd)\0"
++Lt_0695: .ascii " *.xpm = icon resource (*nix/*bsd)\0"
+ .balign 4
+-Lt_0693: .ascii "options:\0"
++Lt_0696: .ascii "options:\0"
+ .balign 4
+-Lt_0694: .ascii " @<file> Read more command line arguments from a file\0"
++Lt_0697: .ascii " @<file> Read more command line arguments from a file\0"
+ .balign 4
+-Lt_0695: .ascii " -a <file> Treat file as .o/.a input file\0"
++Lt_0698: .ascii " -a <file> Treat file as .o/.a input file\0"
+ .balign 4
+-Lt_0696: .ascii " -arch <type> Set target architecture (default: 486)\0"
++Lt_0699: .ascii " -arch <type> Set target architecture (default: 486)\0"
+ .balign 4
+-Lt_0697: .ascii " -asm att|intel Set asm format (-gen gcc|llvm, x86 or x86_64 only)\0"
++Lt_069A: .ascii " -asm att|intel Set asm format (-gen gcc|llvm, x86 or x86_64 only)\0"
+ .balign 4
+-Lt_0698: .ascii " -b <file> Treat file as .bas input file\0"
++Lt_069B: .ascii " -b <file> Treat file as .bas input file\0"
+ .balign 4
+-Lt_0699: .ascii " -c Compile only, do not link\0"
++Lt_069C: .ascii " -c Compile only, do not link\0"
+ .balign 4
+-Lt_069A: .ascii " -C Preserve temporary .o files\0"
++Lt_069D: .ascii " -C Preserve temporary .o files\0"
+ .balign 4
+-Lt_069B: .ascii " -d <name>[=<val>] Add a global #define\0"
++Lt_069E: .ascii " -d <name>[=<val>] Add a global #define\0"
+ .balign 4
+-Lt_069C: .ascii " -dll Same as -dylib\0"
++Lt_069F: .ascii " -dll Same as -dylib\0"
+ .balign 4
+-Lt_069D: .ascii " -dylib Create a DLL (win32) or shared library (*nix/*BSD)\0"
++Lt_06A0: .ascii " -dylib Create a DLL (win32) or shared library (*nix/*BSD)\0"
+ .balign 4
+-Lt_069E: .ascii " -e Enable runtime error checking\0"
++Lt_06A1: .ascii " -e Enable runtime error checking\0"
+ .balign 4
+-Lt_069F: .ascii " -ex -e plus RESUME support\0"
++Lt_06A2: .ascii " -ex -e plus RESUME support\0"
+ .balign 4
+-Lt_06A0: .ascii " -exx -ex plus array bounds/null-pointer checking\0"
++Lt_06A3: .ascii " -exx -ex plus array bounds/null-pointer checking\0"
+ .balign 4
+-Lt_06A1: .ascii " -export Export symbols for dynamic linkage\0"
++Lt_06A4: .ascii " -export Export symbols for dynamic linkage\0"
+ .balign 4
+-Lt_06A2: .ascii " -forcelang <name> Override #lang statements in source code\0"
++Lt_06A5: .ascii " -forcelang <name> Override #lang statements in source code\0"
+ .balign 4
+-Lt_06A3: .ascii " -fpmode fast|precise Select floating-point math accuracy/speed\0"
++Lt_06A6: .ascii " -fpmode fast|precise Select floating-point math accuracy/speed\0"
+ .balign 4
+-Lt_06A4: .ascii " -fpu x87|sse Set target FPU\0"
++Lt_06A7: .ascii " -fpu x87|sse Set target FPU\0"
+ .balign 4
+-Lt_06A5: .ascii " -g Add debug info\0"
++Lt_06A8: .ascii " -g Add debug info\0"
+ .balign 4
+-Lt_06A6: .ascii " -gen gas|gcc|llvm Select code generation backend\0"
++Lt_06A9: .ascii " -gen gas|gcc|llvm Select code generation backend\0"
+ .balign 4
+-Lt_06A7: .ascii " [-]-help Show this help output\0"
++Lt_06AA: .ascii " [-]-help Show this help output\0"
+ .balign 4
+-Lt_06A8: .ascii " -i <path> Add an include file search path\0"
++Lt_06AB: .ascii " -i <path> Add an include file search path\0"
+ .balign 4
+-Lt_06A9: .ascii " -include <file> Pre-#include a file for each input .bas\0"
++Lt_06AC: .ascii " -include <file> Pre-#include a file for each input .bas\0"
+ .balign 4
+-Lt_06AA: .ascii " -l <name> Link in a library\0"
++Lt_06AD: .ascii " -l <name> Link in a library\0"
+ .balign 4
+-Lt_06AB: .ascii " -lang <name> Select FB dialect: deprecated, fblite, qb\0"
++Lt_06AE: .ascii " -lang <name> Select FB dialect: deprecated, fblite, qb\0"
+ .balign 4
+-Lt_06AC: .ascii " -lib Create a static library\0"
++Lt_06AF: .ascii " -lib Create a static library\0"
+ .balign 4
+-Lt_06AD: .ascii " -m <name> Specify main module (default if not -c: first input .bas)\0"
++Lt_06B0: .ascii " -m <name> Specify main module (default if not -c: first input .bas)\0"
+ .balign 4
+-Lt_06AE: .ascii " -map <file> Save linking map to file\0"
++Lt_06B1: .ascii " -map <file> Save linking map to file\0"
+ .balign 4
+-Lt_06AF: .ascii " -maxerr <n> Only show <n> errors\0"
++Lt_06B2: .ascii " -maxerr <n> Only show <n> errors\0"
+ .balign 4
+-Lt_06B0: .ascii " -mt Use thread-safe FB runtime\0"
++Lt_06B3: .ascii " -mt Use thread-safe FB runtime\0"
+ .balign 4
+-Lt_06B1: .ascii " -nodeflibs Do not include the default libraries\0"
++Lt_06B4: .ascii " -nodeflibs Do not include the default libraries\0"
+ .balign 4
+-Lt_06B2: .ascii " -noerrline Do not show source context in error messages\0"
++Lt_06B5: .ascii " -noerrline Do not show source context in error messages\0"
+ .balign 4
+-Lt_06B3: .ascii " -noobjinfo Do not read/write compile-time info from/to .o and .a files\0"
++Lt_06B6: .ascii " -noobjinfo Do not read/write compile-time info from/to .o and .a files\0"
+ .balign 4
+-Lt_06B4: .ascii " -o <file> Set .o (or -pp .bas) file name for prev/next input file\0"
++Lt_06B7: .ascii " -o <file> Set .o (or -pp .bas) file name for prev/next input file\0"
+ .balign 4
+-Lt_06B5: .ascii " -O <value> Optimization level (default: 0)\0"
++Lt_06B8: .ascii " -O <value> Optimization level (default: 0)\0"
+ .balign 4
+-Lt_06B6: .ascii " -p <path> Add a library search path\0"
++Lt_06B9: .ascii " -p <path> Add a library search path\0"
+ .balign 4
+-Lt_06B7: .ascii " -pic Generate position-independent code (non-x86 Unix shared libs)\0"
++Lt_06BA: .ascii " -pic Generate position-independent code (non-x86 Unix shared libs)\0"
+ .balign 4
+-Lt_06B8: .ascii " -pp Write out preprocessed input file (.pp.bas) only\0"
++Lt_06BB: .ascii " -pp Write out preprocessed input file (.pp.bas) only\0"
+ .balign 4
+-Lt_06B9: .ascii " -prefix <path> Set the compiler prefix path\0"
++Lt_06BC: .ascii " -prefix <path> Set the compiler prefix path\0"
+ .balign 4
+-Lt_06BA: .ascii " -print host|target Display host/target system name\0"
++Lt_06BD: .ascii " -print host|target Display host/target system name\0"
+ .balign 4
+-Lt_06BB: .ascii " -print fblibdir Display the compiler's lib/ path\0"
++Lt_06BE: .ascii " -print fblibdir Display the compiler's lib/ path\0"
+ .balign 4
+-Lt_06BC: .ascii " -print x Display output binary/library file name (if known)\0"
++Lt_06BF: .ascii " -print x Display output binary/library file name (if known)\0"
+ .balign 4
+-Lt_06BD: .ascii " -profile Enable function profiling\0"
++Lt_06C0: .ascii " -profile Enable function profiling\0"
+ .balign 4
+-Lt_06BE: .ascii " -r Write out .asm/.c/.ll (-gen gas/gcc/llvm) only\0"
++Lt_06C1: .ascii " -r Write out .asm/.c/.ll (-gen gas/gcc/llvm) only\0"
+ .balign 4
+-Lt_06BF: .ascii " -rr Write out the final .asm only\0"
++Lt_06C2: .ascii " -rr Write out the final .asm only\0"
+ .balign 4
+-Lt_06C0: .ascii " -R Preserve temporary .asm/.c/.ll/.def files\0"
++Lt_06C3: .ascii " -R Preserve temporary .asm/.c/.ll/.def files\0"
+ .balign 4
+-Lt_06C1: .ascii " -RR Preserve the final .asm file\0"
++Lt_06C4: .ascii " -RR Preserve the final .asm file\0"
+ .balign 4
+-Lt_06C2: .ascii " -s console|gui Select win32 subsystem\0"
++Lt_06C5: .ascii " -s console|gui Select win32 subsystem\0"
+ .balign 4
+-Lt_06C3: .ascii " -showincludes Display a tree of file names of #included files\0"
++Lt_06C6: .ascii " -showincludes Display a tree of file names of #included files\0"
+ .balign 4
+-Lt_06C4: .ascii " -static Prefer static libraries over dynamic ones when linking\0"
++Lt_06C7: .ascii " -static Prefer static libraries over dynamic ones when linking\0"
+ .balign 4
+-Lt_06C5: .ascii " -t <value> Set .exe stack size in kbytes, default: 1024 (win32/dos)\0"
++Lt_06C8: .ascii " -t <value> Set .exe stack size in kbytes, default: 1024 (win32/dos)\0"
+ .balign 4
+-Lt_06C6: .ascii " -target <name> Set cross-compilation target\0"
++Lt_06C9: .ascii " -target <name> Set cross-compilation target\0"
+ .balign 4
+-Lt_06C7: .ascii " -title <name> Set XBE display title (xbox)\0"
++Lt_06CA: .ascii " -title <name> Set XBE display title (xbox)\0"
+ .balign 4
+-Lt_06C8: .ascii " -v Be verbose\0"
++Lt_06CB: .ascii " -v Be verbose\0"
+ .balign 4
+-Lt_06C9: .ascii " -vec <n> Automatic vectorization level (default: 0)\0"
++Lt_06CC: .ascii " -vec <n> Automatic vectorization level (default: 0)\0"
+ .balign 4
+-Lt_06CA: .ascii " [-]-version Show compiler version\0"
++Lt_06CD: .ascii " [-]-version Show compiler version\0"
+ .balign 4
+-Lt_06CB: .ascii " -w all|pedantic|<n> Set min warning level: all, pedantic or a value\0"
++Lt_06CE: .ascii " -w all|pedantic|<n> Set min warning level: all, pedantic or a value\0"
+ .balign 4
+-Lt_06CC: .ascii " -Wa <a,b,c> Pass options to 'as'\0"
++Lt_06CF: .ascii " -Wa <a,b,c> Pass options to 'as'\0"
+ .balign 4
+-Lt_06CD: .ascii " -Wc <a,b,c> Pass options to 'gcc' (-gen gcc) or 'llc' (-gen llvm)\0"
++Lt_06D0: .ascii " -Wc <a,b,c> Pass options to 'gcc' (-gen gcc) or 'llc' (-gen llvm)\0"
+ .balign 4
+-Lt_06CE: .ascii " -Wl <a,b,c> Pass options to 'ld'\0"
++Lt_06D1: .ascii " -Wl <a,b,c> Pass options to 'ld'\0"
+ .balign 4
+-Lt_06CF: .ascii " -x <file> Set output executable/library file name\0"
++Lt_06D2: .ascii " -x <file> Set output executable/library file name\0"
+ .balign 4
+-Lt_06D0: .ascii " -z gosub-setjmp Use setjmp/longjmp to implement GOSUB\0"
++Lt_06D3: .ascii " -z gosub-setjmp Use setjmp/longjmp to implement GOSUB\0"
+ .balign 4
+-Lt_06DE: .ascii "FreeBASIC Compiler - Version 1.06.0 (02-17-2019), built for \0"
++Lt_06E1: .ascii "FreeBASIC Compiler - Version 1.06.0 (04-21-2019), built for \0"
+ .balign 4
+-Lt_06DF: .ascii "bit)\0"
++Lt_06E2: .ascii "bit)\0"
+ .balign 4
+-Lt_06E4: .ascii "Copyright (C) 2004-2019 The FreeBASIC development team.\0"
++Lt_06E7: .ascii "Copyright (C) 2004-2019 The FreeBASIC development team.\0"
+
+ .section .ctors, "aw", @progbits
+ .int _GLOBAL__I
diff --git a/dev-lang/fbc/files/1.06.0/fbc/0001-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch b/dev-lang/fbc/files/1.06.0/fbc/0001-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch
new file mode 100644
index 000000000..922120ba0
--- /dev/null
+++ b/dev-lang/fbc/files/1.06.0/fbc/0001-Pass-down-all-options-from-all-Wa-Wc-and-Wl-flags.patch
@@ -0,0 +1,35 @@
+From d1e485d6f1beb39e3228f86c2448b2fac77d1e62 Mon Sep 17 00:00:00 2001
+From: William Breathitt Gray <vilhelm.gray@gmail.com>
+Date: Sun, 21 Apr 2019 19:10:48 +0900
+Subject: [PATCH] Pass down all options from all -Wa, -Wc, and -Wl flags
+
+All options from all -Wa, -Wc, and -Wl flags are passed down to their
+respective programs. This fixes issue #137.
+---
+ src/compiler/fbc.bas | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/compiler/fbc.bas b/src/compiler/fbc.bas
+index 0f04217a1..f6fa3d9db 100644
+--- a/src/compiler/fbc.bas
++++ b/src/compiler/fbc.bas
+@@ -1869,13 +1869,13 @@ private sub handleOpt(byval optid as integer, byref arg as string)
+ end if
+
+ case OPT_WA
+- fbc.extopt.gas = " " + hReplace( arg, ",", " " ) + " "
++ fbc.extopt.gas += " " + hReplace( arg, ",", " " ) + " "
+
+ case OPT_WC
+- fbc.extopt.gcc = " " + hReplace( arg, ",", " " ) + " "
++ fbc.extopt.gcc += " " + hReplace( arg, ",", " " ) + " "
+
+ case OPT_WL
+- fbc.extopt.ld = " " + hReplace( arg, ",", " " ) + " "
++ fbc.extopt.ld += " " + hReplace( arg, ",", " " ) + " "
+
+ case OPT_X
+ fbc.outname = arg
+--
+2.21.0
+
diff --git a/dev-lang/fbc/metadata.xml b/dev-lang/fbc/metadata.xml
new file mode 100644
index 000000000..2776c8920
--- /dev/null
+++ b/dev-lang/fbc/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <longdescription lang="en">
+ FreeBASIC is a completely free, open-source, multi-platform
+ BASIC compiler, with syntax similar to MS-QuickBASIC, that adds
+ new features such as pointers, unsigned data types, inline
+ assembly, object orientation, and many others.
+ </longdescription>
+ <maintainer type="person">
+ <email>vilhelm.gray@gmail.com</email>
+ <name>William Breathitt Gray</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/freebasic/fbc/issues</bugs-to>
+ <doc lang="en">https://www.freebasic.net</doc>
+ <remote-id type="github">freebasic/fbc</remote-id>
+ </upstream>
+</pkgmetadata>