Actions

icon Post
text/html Subscribe
text/html Unsubscribe

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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


  • To: Martin v. Löwis <martin@xxxxxxxxxxx>, "cxx-abi-dev@xxxxxxxxxxxxxxxx" <cxx-abi-dev@xxxxxxxxxxxxxxxx>
  • Subject: Re: [cxx-abi-dev] Question about guard variable types
  • From: Mark Mitchell <mark@xxxxxxxxxxxxxxxx>
  • Date: Fri, 06 Dec 2002 08:51:11 -0800


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@xxxxxxxxxxxxxxxx
CodeSourcery, LLC            http://www.codesourcery.com