This batch of changes includes:
- Support for FIRST/SKIP clauses
- Support for CURRENT_CONNECTION, CURRENT_ROLE, CURRENT_TRANSACTION and CURRENT_USER context variables
- Changed the BLR generated for RM/Cobol programs to use blr_cstring
rather than blr_text so that CHAR and VARCHAR fields are not written
as "fixed length" fields from Cobol programs. Incoming CHAR and
VARCHAR fields are right filled with spaces inbound to the Cobol
program and stripped of trailing spaces outbound.
The issues are:
1) '1.5' / '0.5' doesn't work in Dialect 1
2) avg ('1.5') doesn't work in Dialect 1
3) 5 * '1.5' produces INT result instead of DOUBLE PRECISION in Dialect 1
4) sum ('1.5') produces NUMERIC(15, 2) result instead of DOUBLE PRECISION in Dialect 1
5) - '1.5' doesn't work in Dialect 1
6) '1.5' * '0.5' and '1.5' / '0.5' are not forbidden in Dialect 3
-Replace codes.h with iberror.h (or remove)
-Move gds__vax_integer and gds__event_block* to alt.cpp and isc_ to gds.cpp
-Use ISC_QUAD internally
-Use isc_vax_integer internally
placed some variables in context
fixed some function signatures
closed a few possible buffer overruns
sorry to the platform maintainers, I can't verify what I did for non-Win32 builds
1. Bring trace DSQL, DYN and BLR trace logging up-to-date
2. Remove redundant CSB pointer dereferences in BLR parser and request compiler
3. Convert RIGHT JOIN to LEFT JOIN early during BLR parsing
4. Check BLR syntax for unititalized contexts usage
5. Some type-safety and const-correctness fixes