DOCUMENT:Q121346  11-FEB-2002  [visualc]
TITLE   :BUG: Spaces Preceding Header File Name Generate Build Errors
PRODUCT :Microsoft C Compiler
PROD/VER::1.0,1.5,1.51,2.0,2.1,4.0,4.1,5.0
OPER/SYS:
KEYWORDS:kbCompiler kbide kbVC kbVC500bug

======================================================================
-------------------------------------------------------------------------------
The information in this article applies to:

 - Microsoft Visual C++, versions 1.0, 1.5, 1.51, 2.0, 2.1, 4.0, 4.1 
 - Microsoft Visual C++, 32-bit Enterprise Edition, version 5.0 
 - Microsoft Visual C++, 32-bit Professional Edition, version 5.0 
-------------------------------------------------------------------------------

SYMPTOMS
========

The following dependency scan errors and/or compiler C1083 errors are generated
when you attempt to scan dependencies or compile a header file that contains an
#include directive with leading spaces in the file name:

 - Scanning dependencies on a header file included in your source file may
   generate the following error if the header file name contains leading
   spaces:

   Could not find the file FILENAME.EXT

   Here " FILENAME.EXT" is the name of the included header file.

 - Attempting to compile a source file that includes a header file with leading
   spaces in the file name generates this compiler error:

   Fatal error C1083: Cannot open include file: ' FILENAME.EXT' : No such file
   or directory

   Here " FILENAME.EXT" is the name of the included header file.

RESOLUTION
==========

Delete the space(s) preceding the filename in the #include directive.

STATUS
======

Microsoft has confirmed this to be a bug in the Microsoft products listed at the
beginning of this article.

In the 32-bit versions of windows, spaces are valid characters in the file names.
This is by design in the 32-bit versions of Visual C++.

MORE INFORMATION
================

To reproduce this error, create a text file called TEST.H and include this file
in your source file with this statement:

      #Include " TEST.H"  // Note the space between quotation mark (") and    TEST.H

Attempting to scan dependencies or compile this file, generates the listed
errors. Trailing spaces in the included filename are ignored and do not cause
errors.

Additional query words: kbVC400bug 8.00 8.00c 9.00 10.00 10.10 10.20

======================================================================
Keywords          : kbCompiler kbide kbVC kbVC500bug 
Technology        : kbVCsearch kbVC400 kbAudDeveloper kbvc150 kbvc100 kbVC410 kbVC500 kbVC151 kbVC200 kbVC210 kbVC32bitSearch kbVC500Search
Version           : :1.0,1.5,1.51,2.0,2.1,4.0,4.1,5.0
Issue type        : kbbug
Solution Type     : kbpending

=============================================================================

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.

Copyright Microsoft Corporation 2002.