Article ID: 151898 - Last Review: July 5, 2005 - Revision: 3.1

BUG: Include Directories Cannot End with a Backslash

This article was previously published under Q151898

On This Page

Expand all | Collapse all

SYMPTOMS

The compiler ignores some or all of the Command Line options that appear after the /I switch.

CAUSE

The compiler incorrectly parses the additional Include Directory Command Line switch if its argument ends with a backslash followed by a quotation mark. The compiler interprets the \" sequence as meaning the path contains a quotation mark.

If you set the additional Include Directories from within Developer Studio, double quotes are automatically placed around the directory name. If there is a backslash at the end of the directory name, this problem occurs.

RESOLUTION

Remove the trailing backslash character from the Include Directory.

STATUS

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

MORE INFORMATION

Sample Code

// Compile options needed to generate error (compiler will not detect
// the /D"_CMDLINE":)
//    CL /c test.cpp /I"test\" /D"_CMDLINE"
// 
// Compile options needed for successful compiling (compiler will
// detect the /D"_CMDLINE":)
//    CL /c test.cpp /I"test" /D"_CMDLINE"

// test.cpp
// 
#ifdef _CMDLINE
#pragma message("Program compiled with _CMDLINE defined.")
#else
#pragma message("Program compiled without _CMDLINE defined.")
#endif
				

APPLIES TO
  • Microsoft Visual C++ 2.0 Professional Edition
  • Microsoft Visual C++ 2.1
  • Microsoft Visual C++ 2.2
  • Microsoft Visual C++ 4.0 Standard Edition
  • Microsoft Visual C++ 4.1 Subscription
  • Microsoft Visual C++ 4.2 Enterprise Edition
  • Microsoft Visual C++ 5.0 Enterprise Edition
  • Microsoft Visual C++ 6.0 Enterprise Edition
  • Microsoft Visual C++ 4.2 Professional Edition
  • Microsoft Visual C++ 5.0 Professional Edition
  • Microsoft Visual C++ 6.0 Professional Edition
  • Microsoft Visual C++, 32-bit Learning Edition 6.0
  • Microsoft Visual C++ .NET 2002 Standard Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
Keywords: 
kbbug kbcompiler KB151898
 

Article Translations

 

Related Support Centers