Floating-point to integer conversion

uunet!netcom.com!segfault!rfg uunet!netcom.com!segfault!rfg
Thu Jun 10 14:30:23 PDT 1993


Fred Tydeman writes:

  Am I misunderstanding C, or is C++ changing the meaning from C?

No Fred.  I don't think you are misunderstanding anything.  You have read
the words clearly and interpreted them just as any clear-headed person
would.

But let me make it abundantly clear that you are worring about one small
difference between C and C++, when in fact there is a HUGE number of just
such (apparently gratuitous) deviations between the carefully crafted
words (and meaning) of the ANSI C standard and the words now present in
the most recent X3J16 working paper (X3J16/93-0010).

Just to provide a few examples, I call your attention to the respective
descriptions of array declarators, of braced initializer lists, of
constant expressions, of type qualifiers, and of array subscripting (just
to name a few).  If you hold the relevant sections of the ANSI C standard
up next to the corresponding sections of the X3J16 working paper, you will
find enormous, inexplicable, and radical differences between the two, all
of which (if left unattended) will undoubtedly result in us having two
(ostensibly related) language standards in which essentially ALL of the
fine print is significantly (and incompatibly) different (often in subtle
ways, such as the one you mentioned).

I attribute this current (unfortunate) situation in X3J16 to two primary
causes:

    o	Several key members of X3J16 have a certain disdain for the
	preceeding work of X3J11.  Thus, even though the ANSI C standard
	is one of the two "base documents" of X3J16, it has been pretty
	throughly ignored (with some notable exceptions of course).

    o	The first four years of work in X3J16 have largely been devoted
	to clarifying the actual rules which apply to all of the C++
	specific language features which had already been implemented
	at the time the committee was formed, and with discussing (and
	adopting) yet more features (which themselves have generally
	required yet more clarification work).  I believe that X3J16's
	emphasis on finishing the specifications of existing C++ features,
	and on adding yet more new features has been at the expense of
	any serious effort to reconcile the X3J16 working paper with
	the ANSI/ISO C standard.

I say all this (even though I know it will not endear me to the X3J16
membership) because I think that it is well past time for people from
the C community who care about compatability between these two languages
to speak up and make their desires known to X3J16.  Compatability
between the two languages just doesn't seem to have gotten nearly the
attention it deserves, and I have a bad feeling that it may just slip
off the tail end of priority chain in the final rush to meet X3J16's
deadline for finishing their standard.

So if you care about compatability between C and C++, the time to act is
now.  Don't wait until the thing is already in its public review cycle.
By then it will be far too late to get the C and C++ standards well and
truly reconciled.

If you want to get involved with X3J16, try to find out who your firm's
voting member is, and then make your feeling known to him/her.  If your
firm doesn't have a voting member on X3J16, maybe *you* should think
about becomming your firm's X3J16 representative.  That way you can
express your opinions on these matters directly.

-- rfg


P.S.  By the way, please note that in the current X3J16 working paper, there
are no "constraints" as there are in the ANSI C standard.  Some members
of X3J16 feel that this is the wrong way to write a standard, so the
final C++ standard may have no "constraints" whatsoever.

P.P.S.  Is anybody in X3J11.1 interfacing with X3J16?  More specifically,
is anybody in X3J11.1 trying to make sure that X3J16 considers all of
the wonderful work of the NCEG for inclusion into the C++ standard?  I
haven't seen anything in the X3J16 mailing or in the X3J16 mailing lists
which would indicate that X3J16 is even considering the work of NCEG
during their (X3J16's) deliberations.


-- Ronald F. Guilmette ------------------------------------------------------
------ domain address: rfgasegfault.uucp ------------------------------------
------ uucp address: ...!uunet!netcom.com!segfault!rfg ----------------------



More information about the Numeric-interest mailing list