January 11, 2003
"Daniel Yokomiso" <daniel_yokomiso@yahoo.com.br> wrote in message news:avkul2$295a$1@digitaldaemon.com...
> Which kinds of incoherent error messages we could get with a value class Int32 instead of a int primitive? Or an array template instead of a basic array? Standardized classes are better for understanding types and operations, an implementer could assume anything allowed by the spec in
his
> implementation.

I don't have any examples offhand. But every time I get an error message from STL, it's "here we go again" trying to figure out what went wrong. Some of the mangled names are over a thousand characters long.


January 11, 2003
That's just because the lazy compilers just spit out the raw type rather than searching for or remembering a suitable typedef name.  It can be handled better.

The only reason they're mangled is because of the legacy C linker.  D won't have that issue.

Sean

"Walter" <walter@digitalmars.com> wrote in message news:avpnhb$23d1$1@digitaldaemon.com...
> I don't have any examples offhand. But every time I get an error message from STL, it's "here we go again" trying to figure out what went wrong.
Some
> of the mangled names are over a thousand characters long.


January 12, 2003
"Walter" <walter@digitalmars.com> escreveu na mensagem news:avpnhb$23d1$1@digitaldaemon.com...
>
> "Daniel Yokomiso" <daniel_yokomiso@yahoo.com.br> wrote in message news:avkul2$295a$1@digitaldaemon.com...
> > Which kinds of incoherent error messages we could get with a value class Int32 instead of a int primitive? Or an array template instead of a
basic
> > array? Standardized classes are better for understanding types and operations, an implementer could assume anything allowed by the spec in
> his
> > implementation.
>
> I don't have any examples offhand. But every time I get an error message from STL, it's "here we go again" trying to figure out what went wrong.
Some
> of the mangled names are over a thousand characters long.
>
>

hey, you should do what the C++ professionals do: write a perl script that will munge the error message and provide a simpler version ;-)


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.435 / Virus Database: 244 - Release Date: 30/12/2002


January 12, 2003
"Sean L. Palmer" <seanpalmer@directvinternet.com> escreveu na mensagem news:avpo2h$23fi$1@digitaldaemon.com...
> That's just because the lazy compilers just spit out the raw type rather than searching for or remembering a suitable typedef name.  It can be handled better.
>
> The only reason they're mangled is because of the legacy C linker.  D
won't
> have that issue.
>
> Sean
>
> "Walter" <walter@digitalmars.com> wrote in message news:avpnhb$23d1$1@digitaldaemon.com...
> > I don't have any examples offhand. But every time I get an error message from STL, it's "here we go again" trying to figure out what went wrong.
> Some
> > of the mangled names are over a thousand characters long.
>
>

Hi,

    I think it's also have something to do with C++ templates not being type
safe: you can use any type parameter to instantiate a template, the compiler
isn't expecting a particular type hierarchy. So all assumptions about
operations needed by the template parameter must be figured out by the
template writer and it's users. It gets messy when a template instantiate
another template that instantiates another template that... until you have
some strange combination of type requirements and your parameter fails with
something (or worse silently does something semantically wrong, but
sintatically correct). Sometimes I try to follow STL or Blitz++ template
instantiations trying to figure out a particular algorithm. Most of the
times I just quit.

    Best regards,
    Daniel Yokomiso.

"Sometimes I lie awake at night, and I ask, 'Where have I gone wrong?' Then
a voice says to me, 'This is going to take more than one night."
- Charles Schulz


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.435 / Virus Database: 244 - Release Date: 30/12/2002


January 12, 2003
FWIW, VC .NET actually shows the typedef names in the error messages and in the debugger.  That helps *alot*.

Sean

"Sean L. Palmer" <seanpalmer@directvinternet.com> wrote in message news:avpo2h$23fi$1@digitaldaemon.com...
> That's just because the lazy compilers just spit out the raw type rather than searching for or remembering a suitable typedef name.  It can be handled better.
>
> The only reason they're mangled is because of the legacy C linker.  D
won't
> have that issue.
>
> Sean
>
> "Walter" <walter@digitalmars.com> wrote in message news:avpnhb$23d1$1@digitaldaemon.com...
> > I don't have any examples offhand. But every time I get an error message from STL, it's "here we go again" trying to figure out what went wrong.
> Some
> > of the mangled names are over a thousand characters long.


1 2 3 4
Next ›   Last »