"Error During Run-Time Initialization": Mixing /FPa and /FPi (31505)



The information in this article applies to:

  • Microsoft Visual Basic for MS-DOS
  • Microsoft Basic Professional Development System (PDS) for MS-DOS and MS OS/2 7.0
  • Microsoft Basic Professional Development System (PDS) for MS-DOS and MS OS/2 7.1

This article was previously published under Q31505
1.00 MS-DOS kbprg B_QuickBas b_basiccom

SUMMARY

When you link separate modules together to make an .EXE program, all the modules must have been compiled with the same math package. The two math packages available in Microsoft Visual Basic for MS-DOS, version 1.0; Microsoft Basic Compiler for MS-DOS and MS OS/2, versions 6.0 and 6.0b, and in Microsoft Basic Professional Development System (PDS) for MS-DOS, versions 7.0 and 7.1 are as follows:

  1. BC /FPi (IEEE coprocessor-emulation math, the default)
  2. BC /FPa (alternate math)
If you LINK modules or libraries together that were compiled with both the BC /FPa and /FPi options, the .EXE program gives the following error message at run time and usually hangs:
Error during run-time initialization
Combining math packages can cause unpredictable results in the .EXE program at run time. After the error message appears, a warm boot (CTRL+ALT+DEL) does not work. To reboot, you must turn the computer off, then back on.

To avoid this problem, make sure when you LINK routines that they were compiled with the same math package. Also, remember that the QB.EXE environment of the Basic Compiler and the QBX.EXE environment of Basic PDS 7.0 and 7.1 do not support the alternate math package. In other words, object modules compiled with the /FPa switch cannot be placed into a Quick library (.QLB file) for use in QB.EXE, QBX.EXE, or VBDOS.EXE.

Modification Type:MinorLast Reviewed:8/16/2005
Keywords:KB31505