[cxx-abi-dev] Question about guard variable types

Mark Mitchell mark at codesourcery.com
Fri Dec 6 16:51:11 UTC 2002


> I think the spec is precise and portable as it stands: it requires 8
> bytes, not sizeof(long long) bytes.

The spec is certainly not portable as written; it talks about an
"__in64_t" type that doesn't exist on lots of platforms.

I guess your point is that if there's no 64-bit integral type you could
make an array of characters and pass that around?

So, instead of using "__int64_t" I guess we could just say "some
unspecified 64-bit type".  It would be nice if you at least created
a typedef for it.

(Note that even though the __cxa_guard functions are extern "C" you
can still observe their types; take their addresses.)

If we do what you suggest, G++ will have to change.  I'd prefer just to
match G++; there's nothing particularly wrong with "long long" and
there aren't -- yet -- very many non-IPF implementations to worry about.

Intel, HP?

-- 
Mark Mitchell                mark at codesourcery.com
CodeSourcery, LLC            http://www.codesourcery.com



More information about the cxx-abi-dev mailing list