Article ID: 168383
Article Last Modified on 7/5/2005
APPLIES TO
- Microsoft Visual C++ 5.0 Enterprise Edition
- Microsoft Visual C++ 5.0 Professional Edition
This article was previously published under Q168383
SYMPTOMS
When a member of an imported class attempts direct initialization of a static local variable of class type with a constant string literal, the following error may result:
RESOLUTION
Simplify the expression. Declare a local static constant string literal, then use that local to initialize the static local variable of class type.
STATUS
Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This problem was corrected in Visual C++ version 6.0 for Windows.
MORE INFORMATION
Steps to Reproduce Behavior
// compiler options needed: /c struct A { A(const char * a); }; struct __declspec(dllimport) B { void f() { static A isa = "..."; // A workaround is to break up the expression //static const char *p = "..."; //static A isa = p ; } ; };
Keywords: kberrmsg kbbug kbfix kbvc600fix kbcpponly kbcompiler KB168383