IMA vs tree-ssa

Joseph S. Myers jsm@polyomino.org.uk
Tue Mar 9 10:41:00 GMT 2004


On Tue, 9 Mar 2004, Mark Mitchell wrote:

> However, I don't think there's any point in all of us debating this
> issue.  We don't agree on the answer, and none of us has a particularly
> good way of backing up our position.  To me, this idea of multiple
> completions of the same incomplete type is ghastly.  You, however,
> believe it is what the standard requires, and apparently that it is also
> what the committe intended.

This seems simply to be a difference between C and C++ backgrounds.  
Types in C do not have linkage; those in C++ do.  I don't know whether
this is a deliberate difference, but it is a fairly fundamental one.

C and C++ are different languages - and different levels of language -
with both intentional and unintentional differences in the interpretation
of code that appears to be in the intersection.  While a lot more could
and should be shared between the implementations than presently is (and in
this context I'd hope a common intermediate representation for multiple
translation units could be shared between C and C++, providing intermodule
support for C++, though I don't know whether inlining between languages
could work), the handling of declarations, name lookup etc. seems so
different I don't think there is much scope for sharing there.  The
differences here about multiple completions of the same incomplete type
are simply examples of this.

> I would appreciate it if you would communicate with the C committee to
> find out what they really intend.  Ultimately, it's their opinion that
> matters.  We can't resolve this issue just by talking among ourselves.

What is the actual concrete defect here?  (As far as I know the only
relevant procedure here is sending DRs - there isn't one for "requests to
identify intent".  Asking the WG14 reflector a question may get answers
"obviously yes", "obviously no" and "it's obvious, but I won't say which
way" to the same question, but doesn't get a good indicator of committee
intent.)  It looks more like a C/C++ divergence to me, and so a matter for
a C/C++ liaison.  It takes long enough to argue about what the UK should
submit as a defect report even when we're agreed there is a defect, let
alone to work things out where it isn't clear that there is a defect or
lack of clarity in the standard at all.  (Meetings spent largely
discussing whether to support the registration of WG14 work items and with
little time left for DRs don't help here.)

-- 
Joseph S. Myers
jsm@polyomino.org.uk



More information about the Gcc mailing list