BUG: Build w/ Many Include Directories Quits Early w/No Errors

Last reviewed: July 22, 1997
Article ID: Q136486
1.50 1.51 1.52 WINDOWS NT kbtool kbbuglist

The information in this article applies to:

  • The Microsoft C/C++ Compiler (CL.EXE) included with: Microsoft Visual C++ for Windows, versions 1.5, 1.51, 1.52

SYMPTOMS

When too much information is passed to the compiler or to the first pass of the compiler, the build quits without completing and generates one of the following:

  • no error messages

    -or-

  • "Out of memory" Error

    -or-

  • An Application Error or general protection (GP) fault

RESOLUTION

Reduce the information being passed to the compiler. Either reduce the number of options (such as definitions) or reduce the lengths of the directory path for include files and the project.

STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

MORE INFORMATION

Steps to Reproduce Problem

  1. Place the VBCHART MFC sample in a subdirectory many levels deep, so that the path to the files is 30 to 40 characters long.

  2. In the preprocessor section (on the Options menu, click Project and then click Compiler), add as many include paths and defines as possible, but do not add so many that you get the error about the options string being too long.

  3. Build VBCHART. An application error is generated.

If you reduce the number of characters in the options by a few and then build the sample, a couple of files are compiled and then it returns with no errors and no warnings. It fails to compile all the files, and the link fails.

A similar but probably unrelated problem occurs when when calling from the command line. If more than 950 characters are passed to pass 1, the compiler fails with an "out of memory" error. If more than 1060 characters are passed, the compiler fails silently (no errors and no warnings).


Additional reference words: 1.50 8.00c GPF exit
KBCategory: kbtool kbbuglist
KBSubcategory: VWBIss CLIss
Keywords : kb16bitonly


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: July 22, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.