Missing Debug symbols

Missing Debug symbols

I'm having a problem with a debugging a DLL plugin I'm writing for an externally developed application. Using Visual Studio 2005 debugger I kick off the application and then initiate my plugin, I can then put breakpoints in my plugin and the debugger will stop at these. My problem is that some symbols seem to be missing, in fact the only symbols which seem to be are available those passed into the method as arguments. For example this line

TolledPath& tolledPath = tolledPathBuilder->BuildFrom(centroid, untolledPath);

gives the following error in the watch window

centroid CXX0017: Error: symbol "centroid" not found
untolledPath CXX0017: Error: symbol "untolledPath" not found

But if I step into the method so that the current point of execution is within the function
TolledPath& TolledPathBuilder::BuildFrom(Centroid* centroid, Path& untolledPath)
.... // pointer is in here

I get the following output from the watch window

+ centroid 0x08e780d8 {m_zoneid=741 } Centroid *
+ untolledPath {m_buildForward=true m_pathLinks=0x16614400 m_pathTurns=0x03d70044 ...} Path &

I'm really puzzled as to what could cause this behaviour? Some further notes:
* If I drop back to the visual studio compiler all symbols are availalbe
* The project is set to output debug symbols using /Zi and I can confirm that the pdb file is being generated.
* I have a slightly non conformant directory structure
|- include
|- src
|- bin (pdb file is in here)
- vc8 (vc/icproj files are here)
|- Project1 (Project1 Debug/Release intermediate directories are here)
|- Project2 (etc)
- solution (solution file is in here)

And the dll file is copied to the application working directory before being run. If anyone can provide some insights it would be very much appreciated.

Jamie Cook

1 post / 0 new
For more complete information about compiler optimizations, see our Optimization Notice.