Boost logo

Boost :

From: Csaba Szepesvari (szepes_at_[hidden])
Date: 1999-10-29 01:41:54


Hi,

Gaddy Barchana-Lorand wrote:

> Hi,
> I have downloaded the smart_ptr.hpp header file, and when compiling my code
> (with MSVC 6.0) I get the the C4503 warning (decorated name length exceeded,
> name was truncated).
>
> 1. Is there a way to avoid the warning (as I'm using the smrt_ptr with STL -
> the names get very long quite easily)?
> 2. Is it safe to ignore the warning (Don't think so...)?
>
> If you answer - please reply to my email as well (as I didn't know how to
> subscribe to this mailing list).
>

I don't think that it is in general safe to ignore this warning (this is true
for any kind of warning except those concerning eg. the debugger).
The problem is that the linker might confuse two different method names with
different argument lists if the mangling scheme is such that parameters happen
to be added at the end of the mangled names (as it is the case for VC, if I
remember well).
If the compiler is clever enough to keep track of what names have been truncated
then it's ok, but I have no info about this for the case of VC.
Another potential problem can be caused by eg. dynamic_cast if a class name is
truncated and the compiler is unaware of this..

Enough from theory, I would be interested in the opinion of people who really
have knowledge about how this is handled by different compilers.

(Anyway, I also encountered this problem when composing some complex containers
from many STL classes..)

Cheers,

  Csaba


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk