| Commit | Date | |
|---|---|---|
|
[r13057]
by
mikeaubury
configure: restore --with-pg-all, and find PostgreSQL where RHEL puts it Reported: PostgreSQL is no longer detected from SVN, while the released ./configure --with-pg-all=/usr/pgsql-18 --with-pg-all was a shorthand in the old configure.in that pointed every This did not show up on Debian or Ubuntu because libpq.pc is on the So detection also gained a fallback chain: pkg-config, then pg_config on Verified: --with-pg-all against a /usr/pgsql-18 style prefix gives |
2026-09-02 14:21:45 | Tree |
|
[r13056]
by
mikeaubury
Update the vendored SQLite3 ODBC driver from 2007 to 0.99991 The vendored copy dated from 13 May 2007 (r9422) and segfaulted on any Two causes, both long since fixed upstream: It built its SQL by textual substitution, calling Its header was also pinned to sqlite3-local.h, which declares SQLite Upstream's sqlite3odbc.c and .h replace both files, keeping the small Parameterised statements, cursors and quote escaping now all work. |
2026-09-02 13:17:26 | Tree |
|
[r13055]
by
mikeaubury
Generator: unblock report modules and fix generated label names Measured against fgldemo - 41 modules, 5900 lines - rather than guessed binding.o was never in the plug-in's link line, and binding.c is in any Generated labels used %d on a value that can be negative, producing fgldemo now generates 39 of 41 modules, up from 36. The two that do not |
2026-09-02 11:58:39 | Tree |
|
[r13054]
by
mikeaubury
.NET: 4GL's implicit conversions, display widths, and a README 4GL allows LET lv_char = lv_int and converts on the way; C# does not. The They are hand-written rather than System.Convert, which is wrong in the DISPLAY now passes each value's width, not just a DECIMAL's precision. A fifth end-to-end program, convert.4gl, covers thirteen cross-type Adds dotnet/README.md. |
2026-09-02 11:36:42 | Tree |
|
[r13053]
by
mikeaubury
Generator: carry DECIMAL precision and scale; control flow probe Same problem as CHAR, same shape of fix. A DECIMAL(10,2) maps to C#'s Both are supplied where the declaration is still known. The assignment L_d = Fgl.Scale(expr, 10, 2); which rounds to the declared scale and forces the trailing zeros, since Display("div =", Fgl.Disp(L_d, 10)); Adds IsNull, AsDecimal and CompareString to the runtime, which generated A third end-to-end probe covers FOR, WHILE, IF, CASE, arithmetic, string |
2026-09-02 07:59:22 | Tree |
|
[r13052]
by
mikeaubury
Generator: carry CHAR widths through to the generated code A 4GL CHAR is fixed width and blank padded, but it maps to a C# string, The width is known at the assignment even though it is not recoverable L_s = Fgl.Pad("hello", 10); This uses the generator's existing write-prefix / suffix mechanism in VARCHAR is deliberately excluded: it has no fixed width to pad to. Also adds Fgl.CompareString, which generated code calls wherever either A second end-to-end probe covers nine assignment forms: CHAR padding and |
2026-09-02 07:53:54 | Tree |
|
[r13051]
by
mikeaubury
Add the C# generator plug-in source (lex_cs) lex_cs was copied into the tree but never added to SVN, so it - and the Deliberately NOT added: the directory also holds about 35M of backup The plug-in is still not built by the top-level make - it has to be |
2026-09-02 07:45:49 | Tree |
|
[r13050]
by
mikeaubury
Retarget the C# generator onto the .NET runtime The CSNEW generator already built and worked - it was simply never wired namespace and using -> Aubit4GL / Aubit4GL.Generated DISPLAY now emits its expressions as separate arguments rather than A new end-to-end probe compiles ONE 4GL program through BOTH toolchains Known gap, recorded at the head of the probe: CHAR(n) maps to a bare |
2026-09-02 07:44:09 | Tree |
|
[r13049]
by
mikeaubury
.NET: REPORT engine Page and line tracking, the four margins, COLUMN positioning, SKIP, NEED, The state follows BaseFGLReport from the original C# library, which had COUNT(*) and SUM/AVG keep separate counters: COUNT counts rows while the |
2026-09-02 07:33:32 | Tree |
|
[r13048]
by
mikeaubury
.NET: USING format engine Thirty formats now render identically to the C runtime, checked by a new Four rules the probe corrected me on, all of which look wrong coming 0 is a LITERAL, not a digit placeholder - the zero-fill character is &. A zero integer part is blank under #: 0 with "###" is three spaces. Fill is per position, not per field - one & in "##&" does not zero-fill Sign and currency characters occupy digit positions, so "-----" is five |
2026-09-02 07:29:25 | Tree |