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


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.

   > 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?