Path: utzoo!attcan!uunet!samsung!zaphod.mps.ohio-state.edu!usc!apple!agate!darkstar!terra.ucsc.edu!daniel From: daniel@terra.ucsc.edu (Daniel Edelson) Newsgroups: comp.std.c++ Subject: explicit call to destructor Keywords: explicit call to destructor, grammar, syntax, E&S90 Message-ID: <6035@darkstar.ucsc.edu> Date: 15 Aug 90 19:01:40 GMT Sender: usenet@darkstar.ucsc.edu Reply-To: daniel@terra.ucsc.edu (Daniel Edelson) Organization: University of California, Santa Cruz (and Perennial Software) Lines: 33 [E&S 90] section 12.4 says that when a destructor is explicitly called its name must be fully qualified: i.e., p->X::~X() rather than p->~X(). The relevant productions in this grammar (for an example that uses ->) are: expression ... cast-expression ... postfix-expression ... name name: qualified-name qualified-name: class-name :: ~ class-name Document X3J16/90-0032, ``Differences Between the C++ Reference Manuals'' (errata in the version of [E&S 90] that was distributed at the March 1990 X3J16 meeting) contradicts this. This document has the production name: ~ class-name This will permit an explicit call to the destructor without use of the fully qualified name. Is the revised document correct or is this an errata in the grammar in the errata list? Daniel Edelson daniel@cis.ucsc.edu (University of California, Santa Cruz) or ...!sun!practic!peren!daniel (Perennial Software, Inc.)