[xsd-users] Warning 6005

Uri Karagila uri at hyperroll.com
Sun Feb 17 03:11:45 EST 2008


file libxsd/xsd/cxx/tree/elements.hxx, line 319:
        virtual type*
        _clone (flags f = 0, container* c = 0) const
        {
          return new type (*this, f, c);  // <<< This line causes
warning 6005; if simple "return 0;" used, no warning generated.
        }
[line 0
 
xsd::cxx::tree::_type::_clone(xsd::cxx::tree::flags,xsd::cxx::tree::_typ
e
    *) const] Infinite loop detected. Check for spinning on non-volatile
    variable. (6005)

Compiler upgraded:
> aCC -V
aCC: HP ANSI C++ B3910B A.03.80


Regards
Uri

-----Original Message-----
From: Boris Kolpackov [mailto:boris at codesynthesis.com] 
Sent: Thursday, February 14, 2008 3:36 PM
To: Uri Karagila
Cc: xsd-users at codesynthesis.com
Subject: Re: [xsd-users] Warning 6005

Hi Uri,

Uri Karagila <uri at hyperroll.com> writes:

> Warning 6005: Exact position unknown; near
> ["/usr/include/sys/_inttypes.h", line 86]. # [line 0
>
xsd::cxx::tree::_type::_clone(xsd::cxx::tree::flags,xsd::cxx::tree::_typ
> e *) const] Infinite loop detected. Check for spinning on non-volatile
> variable. (6005)

This appears to be a compiler bug. At least we don't get it with aCC
A.03.77.

> The warning has no relation to the /usr/include/sys/_inttypes.h file,
> actually. I suppose, it's because of _clone() function in
> libxsd/xsd/cxx/tree/elements.hxx file, line 322.

I don't see anything in line 322 that could possibly cause this.
On the other hand, line 299 could be it. Can you try to comment
the while loop on this line and let me know if the warning goes
away?

Thanks,
Boris




More information about the xsd-users mailing list