C++Talk.NET Forum Index C++Talk.NET
C++ language newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Pre-Standard compiler compatibility factor for additions to

 
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ language, library and standards
View previous topic :: View next topic  
Author Message
David Abrahams
Guest





PostPosted: Tue Oct 11, 2005 10:42 pm    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote



"Axter" <google (AT) axter (DOT) com> writes:

Quote:
When the C++ standard committee considers adding a new class to the
standard, how important is it for the class to be able to compile to
non-compliant (pre-standard) compilers like VC++ 6.0?

In other words, if there's a class that is fully compliant with the
C98 C++ standard, but does not compile on VC++ 6.0, would that pretty
much kill or greatly reduce the chances of the class being added to the
standard?

No, we don't make allowances for non-compliant compilers.

--
Dave Abrahams
Boost Consulting
www.boost-consulting.com

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]


Back to top
Axter
Guest





PostPosted: Tue Oct 11, 2005 10:47 pm    Post subject: Pre-Standard compiler compatibility factor for additions to Reply with quote



When the C++ standard committee considers adding a new class to the
standard, how important is it for the class to be able to compile to
non-compliant (pre-standard) compilers like VC++ 6.0?

In other words, if there's a class that is fully compliant with the
C98 C++ standard, but does not compile on VC++ 6.0, would that pretty
much kill or greatly reduce the chances of the class being added to the
standard?

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]

Back to top
Bronek Kozicki
Guest





PostPosted: Wed Oct 12, 2005 6:23 pm    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote



Axter <google (AT) axter (DOT) com> wrote:
Quote:
In other words, if there's a class that is fully compliant with the
C98 C++ standard, but does not compile on VC++ 6.0, would that pretty
much kill or greatly reduce the chances of the class being added to
the standard?

I doubt so. However, as currently there is no 100% compliant compiler,
if there is no way to implement said class depending on some obscure
(and often not implemented) feature of the language, IMHO its chances to
be accepted would be pretty small.


B.

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]


Back to top
P.J. Plauger
Guest





PostPosted: Fri Oct 14, 2005 2:43 am    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote

""Bronek Kozicki"" <brok (AT) rubikon (DOT) pl> wrote


Quote:
Axter <google (AT) axter (DOT) com> wrote:
In other words, if there's a class that is fully compliant with the
C98 C++ standard, but does not compile on VC++ 6.0, would that pretty
much kill or greatly reduce the chances of the class being added to
the standard?

I doubt so. However, as currently there is no 100% compliant compiler,

Uh, I believe that EDG's front end has been about 100% as you can
get for a couple of years now, as are Dinkumware's C and C++ libraries.
Aside from the numerous OEMs who license both our components, you can
assemble your own compliant compiler from Comeau's inexpensive
compiler package and a package from our web site.

Quote:
if there is no way to implement said class depending on some obscure (and
often not implemented) feature of the language, IMHO its chances to be
accepted would be pretty small.

Unless it was called auto_ptr. (Supply your own emoticon here.)

P.J. Plauger
Dinkumware, Ltd.
http://www.dinkumware.com


---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]


Back to top
Bronek Kozicki
Guest





PostPosted: Fri Oct 14, 2005 1:57 pm    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote

P.J. Plauger wrote:
Quote:
assemble your own compliant compiler from Comeau's inexpensive
compiler package and a package from our web site.

actually, during Boost regression testing we found some problems with
its variadic macros (these appeared to be no macros at all). But it
comes very close to 100%

Quote:
Unless it was called auto_ptr. (Supply your own emoticon here.)

well, at the time auto_ptr was discussed, language did not have proper
move semantics. To stay on topic: I'm pretty certain that any library
depending on newly proposed language features (eg. move semantics and
rvalue-references, even though these are implemented only experimentaly)
will not be precluded from discussion.


B.

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]


Back to top
Pete Becker
Guest





PostPosted: Sat Oct 15, 2005 4:46 am    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote

Bronek Kozicki wrote:

Quote:
P.J. Plauger wrote:

assemble your own compliant compiler from Comeau's inexpensive
compiler package and a package from our web site.


actually, during Boost regression testing we found some problems with
its variadic macros (these appeared to be no macros at all). But it
comes very close to 100%

variadic macros are not (yet) part of C++.

--

Pete Becker
Dinkumware, Ltd. (http://www.dinkumware.com)

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]


Back to top
Bronek Kozicki
Guest





PostPosted: Sat Oct 15, 2005 4:50 am    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote

Bronek Kozicki wrote:
Quote:
actually, during Boost regression testing we found some problems with
its variadic macros (these appeared to be no macros at all). But it

.. just minor correction. The problem is not with macros, but va_list
type which seems to be defined in the wrong namespace.


B.

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]


Back to top
Bronek Kozicki
Guest





PostPosted: Sat Oct 15, 2005 6:07 pm    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote

Pete Becker wrote:
Quote:
variadic macros are not (yet) part of C++.

I think they belong to standard header <cstdarg>, see clause 18.7 and
clauses 17.4.3.1.3 - 17.4.3.1.4 with footnotes


B.

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]


Back to top
P.J. Plauger
Guest





PostPosted: Sat Oct 15, 2005 6:07 pm    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote

"Bronek Kozicki" <brok (AT) rubikon (DOT) pl> wrote


Quote:
Bronek Kozicki wrote:
actually, during Boost regression testing we found some problems with its
variadic macros (these appeared to be no macros at all). But it

. just minor correction. The problem is not with macros, but va_list type
which seems to be defined in the wrong namespace.

If you're expecting that including <stdarg.h> will define va_list
in namespace std, you're out of luck -- and not just with our
library. We *can* do that, if you use our C library too; with a
"native" C library we don't have much of a chance (Nor does
anybody else.). But most of the time we don't bother even with
our own C library, for reasons that have often been discussed
in this newsgroup.

There's widespread support for changing the next version of the
C++ Standard to (finally) accept today's reality about the use
of namespaces in Standard C headers.

P.J. Plauger
Dinkumware, Ltd.
http://www.dinkumware.com


---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]


Back to top
Pete Becker
Guest





PostPosted: Sat Oct 15, 2005 8:30 pm    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote

Bronek Kozicki wrote:
Quote:
Pete Becker wrote:

variadic macros are not (yet) part of C++.


I think they belong to standard header <cstdarg>, see clause 18.7 and
clauses 17.4.3.1.3 - 17.4.3.1.4 with footnotes


I thought that by "variadic macros" you meant macros with
variable-length argument lists. You're right: the C language support for
functions with variable-length argument lists comes from <stdarg.h> or
<cstdarg>.

--

Pete Becker
Dinkumware, Ltd. (http://www.dinkumware.com)

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]


Back to top
Bronek Kozicki
Guest





PostPosted: Sun Oct 16, 2005 7:55 am    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote

P.J. Plauger wrote:
Quote:
. just minor correction. The problem is not with macros, but va_list type
which seems to be defined in the wrong namespace.

If you're expecting that including <stdarg.h> will define va_list
in namespace std, you're out of luck

well, obviously I do not. And the problem I mentioned does not apply to
Dinkumware library, but compiler itself (surprise). Soon it will be gone
anyway, as new version of the compiler is on its way.


B.

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]


Back to top
P.J. Plauger
Guest





PostPosted: Sun Oct 16, 2005 6:32 pm    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote

"Bronek Kozicki" <brok (AT) rubikon (DOT) pl> wrote


Quote:
P.J. Plauger wrote:
. just minor correction. The problem is not with macros, but va_list type
which seems to be defined in the wrong namespace.

If you're expecting that including <stdarg.h> will define va_list
in namespace std, you're out of luck

well, obviously I do not.

Sorry, but that *wasn't* obvious, given the endemic confusion about C header
namespaces caused by the C++ Standard.

Quote:
And the problem I mentioned does
not apply to Dinkumware library, but compiler itself (surprise). Soon it
will be gone anyway, as new version of the compiler is on its way.

Yes, privately you told me enough that I could figure out the problem.
It seems that the EDG front end, in its zeal to work with as many
libraries as possible, does its level best not to peer inside the
header <stdarg.h>, and more recently <cstdarg>. This causes trouble
for those of us who provide replacements that do nontrivial things.
You can outsmart the front end, but it takes a bit of work that Comeau
is only recently getting done.

This whole discussion began after I asserted that the combination
of EDG front end and Dinkumware libraries was a completely
conforming implementation. The counter assertion was that it
failed at least one conformance test used by Boost. It is
important to realize that any practical compiler component has
a gazillion options for interfacing to existing compilers and
libraries. Not all of those options produce completely conforming
behavior, for good and proper reasons. But there's a world of
difference between a product that *can* be used in a
nonconforming way and one that *can't possibly* be used
in a completely conforming way. A front end that lacks support
for export templates is in the latter category, as is a library that
lacks all the C95 and C++98 additions in its C library
component. Pointing out issues like EDG's optional treatment
of <stdarg.h> merely muddies the water.

P.J. Plauger
Dinkumware, Ltd.
http://www.dinkumware.com


---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]


Back to top
Lance Diduck
Guest





PostPosted: Mon Oct 17, 2005 6:00 am    Post subject: Re: Pre-Standard compiler compatibility factor for additions Reply with quote

Note that the recent type_traits addition does assume some compiler
capabilities that AFAIK are still unspecified. i.e. things like is_pod,
is_union, etc. Does anyone know of proposals to add these capabilities?

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]

Back to top
Display posts from previous:   
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ language, library and standards All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.