BUG: Evaluating _pascal Functions Can Give Erroneous CXX0039 (116421)
The information in this article applies to:
- Microsoft CodeView for MS-DOS 4.0
- Microsoft CodeView for MS-DOS 4.01
- Microsoft CodeView for MS-DOS 4.1
- Microsoft CodeView for Windows 4.0
- Microsoft CodeView for Windows 4.01
- Microsoft CodeView for Windows 4.1
This article was previously published under Q116421 SYMPTOMS
Evaluating functions declared with the _pascal calling convention in
the Codeview command window using either the C or C++ Expression
Evaluator can cause the following error:
CXX0039: Error Symbol is ambiguous
This occurs even when the symbol is not ambiguous, although the decorated
name of the symbol is the same as its undecorated name. Note that this
problem can also occur with mixed case _pascal declared names if they are
exported with their mixed case names in a .DEF file. This would be
incorrect since the .DEF file is not using the correctly decorated name,
but if /NOI is not specified when linking, no error is given.
RESOLUTION
Avoid using all uppercase letters in functions declared with the
_pascal calling convention. Then, turn on Codeview's case sensitivity
before evaluating these functions in the command window.
In the case of exported functions mentioned above, be sure to use the
fully decorated name in the .DEF file. If you are unsure what they
are, use the linker /MAP option to have the linker generate a .map
file. This file contains the symbol names after they have been
decorated.
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.
Modification Type: | Major | Last Reviewed: | 10/23/2003 |
---|
Keywords: | kb16bitonly KB116421 kbAudDeveloper |
---|
|