[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]
ORDER_BOMB / EXPORT_BOMB status?
- To: <michael@xxxxxxxxxxx>
- Subject: ORDER_BOMB / EXPORT_BOMB status?
- From: Mark S. Miller <vlad!mark>
- Date: Thu, 26 Jul 90 07:51:16 PDT
- Cc: <xtech@xxxxxxxxxxx>
- In-reply-to: <Michael>,51 PDT <9007260953.AA22592@xanadu>
Date: Thu, 26 Jul 90 02:53:51 PDT
From: xanadu!michael (Michael McClary)
> If ORDER_BOMB & EXPORT_BOMB now work, I think we should consider
> DESIGN_BOMB to be obsolete (but left in for now).
Though they are not tested explicitly, ORDER_BOMB(), BUILD_BOMB(), and
code equivalent to EXPORT_BOMB() are used internally by bombx.cxx for
the guts of SHIELDS. So they are tested implicitly, which means they
now work.
Oops. I meant ORDER_BOMB & BUILD_BOMB. Good, I'll start using them.
Thanks.
> Btw, "static class ...." doesn't mean anything in ARM C++. I don't
> know that it ever meant anything in any C++. (Yes, I know what it
> should mean, but I didn't design it)
What do YOU think it should mean? (If it means one of the two things
I suspect it should mean, it better work, or it breaks
"static class Foo {...} fooInstance;"
and probably "static struct..." as well. If it means the other, and
it doesn't work, there's the possibility that bombs will have a global
name space on some platforms.)
Oops again. I meant "static class Foo {....};" doesn't mean anything
(i.e., is equivalent to "class Foo {....};"). However, you're quite
right. "static class Foo {....} fooInstance;" is (I believe)
equivalent to "class Foo {....}; static Foo fooInstance;". In other
words, in all cases "Foo" appearing in file scope has external
linkage. New in ARM C++ are classes whose names are not in file
scope. I don't know what linkage these can have (but we won't have
these until cfront 2.1 anyway). However, "static class ..." is used
in DESIGN_BOMB & DESIGN_SMART_BOMB in the way I meant--the one which
doesn't mean anything. Therefore bomb types (as opposed to bomb
instances) are indeed in a global name space on *all* platforms.
I noticed that the macros SHIELD_RETURN(), SHIELD_VOID, SHIELD_BREAK,
and SHIELD_CONTINUE aren't in the alpha-6 version. I'll add them to
my new version for the merge.
Neat stuff. I hadn't heard about these before. Any volunteers to get
the translator to generate these instead inside shield code?