home *** CD-ROM | disk | FTP | other *** search
-
- Table of Contents
-
- I. Documentation Fixes
- II. Potential Problems
- III. Portability Version Only
-
- Documentaton Fixes
-
- 1. Documentation fix for '/DLANGUAGE' conditional compilation flag:
-
- When '/DLANGUAGE' is set, it is necessary to also set the '/DNO_SIZE_T'
- flag for most compilers. You will know you have a problem because
- of error messages from the compiler.
-
- 2. Additional 'NOIO' switch documentation.
-
- If you wish to use Code Base 4.2 database management with a third
- party screen management library, you compile with the 'NOIO'
- conditional compilation switch. In this case, the routines
- in all source files starting with 'g4', 'n4' and 'w4' are not needed.
- In addition, files 'b4browse.c', 'b4quick.c', and 'x4list.c' are not
- needed. These files contain the Code Base 4.2 screen management and
- browse routines. In addition, you may wish to modify file 'u4error.c'
- so that error messages are displayed in a different manner.
-
- 3. The example under routine 'g4picture' is incorrect. The second call to
- routine 'g4()' should be a call to 'g4date()' instead:
-
- /* Get a Date */
- g4date( 9,10, date_value ) ;
-
- 4. Under the example of routine 'i4index()' on page 145, the second and
- third call to 'i4index()' should be as follows:
-
- /* The parameters were backwards. */
- i4index( "NAME", "L_NAME+F_NAME", 0, 0 ) ;
-
- /* The parameters were backwards and DTOS is used rather than CTOS. */
- i4index( "PURCHAS", "DTOS(PURCHASED)+L_NAME", 0, 0 ) ;
-
- 5. The example for CTOD(Char_Value) on page 264 is wrong. It should be
- as follows:
-
- CTOD( "11/30/88" )
-
- 6. In the example of routine 'g4valid', the last line of the
- example is a call to 'w4int'. This call is missing the
- last parameter. It should be as follows:
-
- w4int( 12,w4col(), i_data, 10 ) ;
-
- 7. The documentation under routines 'd4write' and 'd4append' both
- state that 'v4unique_error' has a default value of '(int) 1'.
- This is not true, the default value of 'v4unique_error' is '(int) 0'.
-
- 8. The documentation for routine 'x4pack()' neglects to mention that
- this routine does not support memo fields.
-
-
- Potential Problems
-
- 1. Code Base 4.2 does not currently support Turbo C++ 1.0 with the huge
- memory model. We believe there is a bug in Turbo C++ 1.0, which
- causes Code Base 4.2 not to work, for this memory model.
-
- 2. Turbo C 2.0 Problem
-
- When using the medium, small or tiny memory models, the 'malloc' routine
- does not work correctly when allocating more than '0xF000' bytes of
- memory. You may wish to call Borland for a patch. Alternately,
- you could modify routines 'h4alloc_try' and 'h4alloc' in file
- 'h4.c' to intercept calls attempting to allocate more than '0xF000' bytes
- of memory.
-
- ie.
-
- char *h4alloc_try(num)
- int num ;
- {
- if ( num > 0xF000 ) return( (char *) 0 ) ;
- .
- .
- }
-
- char *h4alloc(num)
- int num ;
- {
- if ( num > 0xF000 )
- {
- u4error( E_MEMORY, (char *) 0) ;
- return( (char *) 0 ) ;
- }
- .
- .
- }
-
- 3. Portability Version Only
-
- Refer to fix 'fix.doc' in subdirectory of the Portablity
- support disk.
-