Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C Programming > C11 Compiler Test Suite

Reply
Thread Tools

C11 Compiler Test Suite

 
 
Alan Curry
Guest
Posts: n/a
 
      10-01-2012
In article <(E-Mail Removed)>,
Kaz Kylheku <(E-Mail Removed)> wrote:
>On 2012-09-30, Chicken McNuggets <(E-Mail Removed)> wrote:
>
>> If you only support C90 or C99 then you are not standards
>> compliant as the C11 standard explicitly states it cancels and replaces
>> all previous standards. Likewise C99 stated that it canceled and
>> replaced C90.

>
>That does not make existing copies of C90 spontaneously combust.


Careful, Amazon might read that as a feature request for the next Kindle.

--
Alan Curry
 
Reply With Quote
 
 
 
 
Chicken McNuggets
Guest
Posts: n/a
 
      10-05-2012
On 30/09/2012 22:22, Keith Thompson wrote:

> Having said all that, I personally would like to see much better
> support for the current C standard, and I find, for example,
> Microsoft's decision not to support either C99 or C11 annoying.
> But Microsoft doesn't get enough money from me for my opinion to
> be very relevant to them.
>


I take on board the possibility that I am being overly pedantic but the
point of the original post that lead to this somewhat off-topic
discussion was the intention to get more C compilers to support the full
C11 standard irrespective of whether they also continue to support
previous C standards (via the common -std=cxx compiler switch).

I fail to see how trying to get more compilers to fully support the C11
standard is a bad thing.

Specifically this response struck me as being ridiculous and somewhat
idiotic:

On 26/09/2012 19:11, Kaz Kylheku wrote:
> On 2012-09-14, Chicken McNuggets <(E-Mail Removed)> wrote:
>> It is essential that the C community makes some noise about C11
>>support

>
> No, it isn't. Not only is is not essential, it is counterproductive.
> The "C community" should just go about its business and not mess with
> its compilers or libraries, except in those areas where they are
>foudn to be broken.


(Apologies if the quoting above appears broken. Thunderbird isn't the
best NNTP client in the world)

 
Reply With Quote
 
 
 
 
James Kuyper
Guest
Posts: n/a
 
      10-05-2012
On 10/05/2012 02:33 PM, Chicken McNuggets wrote:
....
> I take on board the possibility that I am being overly pedantic but the
> point of the original post that lead to this somewhat off-topic
> discussion was the intention to get more C compilers to support the full
> C11 standard irrespective of whether they also continue to support
> previous C standards (via the common -std=cxx compiler switch).


I'm in favor of it, but I think that labeling it as "essential" was
excessive. "Desirable" is about the strongest thing I can say about it.
C99 had lots of nice new features I wanted to try out; C2011 made some
of them optional, and the only new features it added were ones I'm not
especially interested in. The ability to write multi-threaded code in an
OS-independent fashion is probably of value to someone, but I've no
particular need for it.

> I fail to see how trying to get more compilers to fully support the C11
> standard is a bad thing.
>
> Specifically this response struck me as being ridiculous and somewhat
> idiotic:
>
> On 26/09/2012 19:11, Kaz Kylheku wrote:
> > On 2012-09-14, Chicken McNuggets <(E-Mail Removed)> wrote:
> >> It is essential that the C community makes some noise about C11
> >>support

> >
> > No, it isn't. Not only is is not essential, it is counterproductive.
> > The "C community" should just go about its business and not mess with
> > its compilers or libraries, except in those areas where they are
> >foudn to be broken.


I agree - a library doesn't need to be broken in order to benefit from
an upgrade. On the other hand, an upgrade isn't necessarily beneficial,
either. If he'd followed up with a claim that there was something
actively wrong with C2011, or at least that it added nothing of value,
his comments would have made more sense. A reasonable argument of that
kind could be made, based upon the fact that various useful features of
C99 have been made optional. I've got him killfiled, but I just checked
with groups.google.com, and he does not appear to have made any such
argument.

> (Apologies if the quoting above appears broken. Thunderbird isn't the
> best NNTP client in the world)


The quoting does not appear to be broken. Have you seen Thunderbird
generate quotation errors? If, of what kind?

 
Reply With Quote
 
Keith Thompson
Guest
Posts: n/a
 
      10-05-2012
Chicken McNuggets <(E-Mail Removed)> writes:
> On 30/09/2012 22:22, Keith Thompson wrote:
>> Having said all that, I personally would like to see much better
>> support for the current C standard, and I find, for example,
>> Microsoft's decision not to support either C99 or C11 annoying.
>> But Microsoft doesn't get enough money from me for my opinion to
>> be very relevant to them.

>
> I take on board the possibility that I am being overly pedantic but the
> point of the original post that lead to this somewhat off-topic
> discussion was the intention to get more C compilers to support the full
> C11 standard irrespective of whether they also continue to support
> previous C standards (via the common -std=cxx compiler switch).


On the other hand, given a compiler that supports C11, having it also
support C90 and C99 shouldn't be all that difficult; it would mostly be
a matter of disabling certain features. And of course the reason it's
common for compilers to support older standards is that they've evolved
from earlier compilers.

On the other other hand, for a newly developed C11 compiler it might not
be worth the effort to support the earlier standards as well.

> I fail to see how trying to get more compilers to fully support the C11
> standard is a bad thing.
>
> Specifically this response struck me as being ridiculous and somewhat
> idiotic:
>
> On 26/09/2012 19:11, Kaz Kylheku wrote:

[snip]

I'm not going to comment on that; perhaps you should have posted your
followup to Kaz's article rather than mine. (He's in my killfile,
so I probably hadn't read it.)

--
Keith Thompson (The_Other_Keith) http://www.velocityreviews.com/forums/(E-Mail Removed) <http://www.ghoti.net/~kst>
Will write code for food.
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
 
Reply With Quote
 
Kaz Kylheku
Guest
Posts: n/a
 
      10-05-2012
On 2012-10-05, Chicken McNuggets <(E-Mail Removed)> wrote:
> On 30/09/2012 22:22, Keith Thompson wrote:
>
>> Having said all that, I personally would like to see much better
>> support for the current C standard, and I find, for example,
>> Microsoft's decision not to support either C99 or C11 annoying.
>> But Microsoft doesn't get enough money from me for my opinion to
>> be very relevant to them.
>>

>
> I take on board the possibility that I am being overly pedantic but the
> point of the original post that lead to this somewhat off-topic
> discussion was the intention to get more C compilers to support the full
> C11 standard irrespective of whether they also continue to support
> previous C standards (via the common -std=cxx compiler switch).


I can't think of any computational problem that I cannot solve until
a C11 compiler falls out of the sky and lands in my lap.

Is there some secret bit manipulation in the CPU that I cannot unlock
otherwise?

> I fail to see how trying to get more compilers to fully support the C11
> standard is a bad thing.


Software development carries risks. Unnecessary software development,
therefore, carries unnecessary risks.

If a C11 upgrade to a compiler breaks some user's code which doesn't use
anything from C11, the net value of that upgrade is negative.
 
Reply With Quote
 
Rui Maciel
Guest
Posts: n/a
 
      10-05-2012
Kaz Kylheku wrote:

> I can't think of any computational problem that I cannot solve until
> a C11 compiler falls out of the sky and lands in my lap.
>
> Is there some secret bit manipulation in the CPU that I cannot unlock
> otherwise?


This is a non-argument. If solving computational problems was the only
metric then, as it's possible to solve them with programs coded purely in
assembly, every high level programming language would be as useless as you
are making C11 out to be. And this would be a silly thing to say.


> Software development carries risks. Unnecessary software development,
> therefore, carries unnecessary risks.
>
> If a C11 upgrade to a compiler breaks some user's code which doesn't use
> anything from C11, the net value of that upgrade is negative.


No. It would mean that you had upgraded to a broken compiler, and that you
were less than rigorous with your decision to rely on a brand new compiler
to use in production. This has absolutely nothing to do with C11.


Rui Maciel
 
Reply With Quote
 
Chicken McNuggets
Guest
Posts: n/a
 
      10-05-2012
On 05/10/2012 21:25, Kaz Kylheku wrote:
> On 2012-10-05, Chicken McNuggets <(E-Mail Removed)> wrote:
>> On 30/09/2012 22:22, Keith Thompson wrote:
>>
>>> Having said all that, I personally would like to see much better
>>> support for the current C standard, and I find, for example,
>>> Microsoft's decision not to support either C99 or C11 annoying.
>>> But Microsoft doesn't get enough money from me for my opinion to
>>> be very relevant to them.
>>>

>>
>> I take on board the possibility that I am being overly pedantic but the
>> point of the original post that lead to this somewhat off-topic
>> discussion was the intention to get more C compilers to support the full
>> C11 standard irrespective of whether they also continue to support
>> previous C standards (via the common -std=cxx compiler switch).

>
> I can't think of any computational problem that I cannot solve until
> a C11 compiler falls out of the sky and lands in my lap.
>
> Is there some secret bit manipulation in the CPU that I cannot unlock
> otherwise?


The point is not whether you can perform some task with previous C
standards or not. It is whether you can perform those tasks in an easier
manner. For instance threading in C11 promises to be much easier as you
will have a threading library that is cross platform compatible built
into the language itself rather than having to rely on third party
implementations. Writing code that works on Windows and UNIX will be
much easier.

No one is claiming that C99, C90 or even K&R C are not Turing complete
the point is just that additional language features make certain
development tasks easier.

>
>> I fail to see how trying to get more compilers to fully support the C11
>> standard is a bad thing.

>
> Software development carries risks. Unnecessary software development,
> therefore, carries unnecessary risks.
>
> If a C11 upgrade to a compiler breaks some user's code which doesn't use
> anything from C11, the net value of that upgrade is negative.
>


I would be highly surprised if an upgrade to C11 in a compiler would
break existing code especially as most compilers (all that I know of)
allow you to specify the standard you wish to compile your code against
(with the -std=cxx command line switch).

If it was shown that a particular compiler broke existing code due to an
upgrade to C11 I would imagine that the compiler vendor would treat that
problem with the up-most priority.

Regardless refusing to implement modern standards because of the risk of
problems seems somewhat short sighted. There are always risks no matter
what you are doing. Life is all about making decisions based on the
possible risk and the eventual benefit. Personally I feel that
implementing C11 is worth the (small) risk.

Let us not forget that C compiler vendors are used to implementing new C
standards. They did it when they transitioned from K&R to ANSI (with the
possible C90 and C94 being in there depending on whether you count them
as actual standards or merely just modifications of existing standards)
then to C99 and now to C11.
 
Reply With Quote
 
Rui Maciel
Guest
Posts: n/a
 
      10-05-2012
James Kuyper wrote:

> I'm in favor of it, but I think that labeling it as "essential" was
> excessive. "Desirable" is about the strongest thing I can say about it.
> C99 had lots of nice new features I wanted to try out; C2011 made some
> of them optional, and the only new features it added were ones I'm not
> especially interested in. The ability to write multi-threaded code in an
> OS-independent fashion is probably of value to someone, but I've no
> particular need for it.


Truth be told, pthreads already provided a way to write multi-threaded code
in an OS-independent fashion for nearly a decade, now. The only thing that
blocked pthreads' adoption was Microsoft's unwillingness to support it.
Now, looking at Microsoft's notorious unwillingness to comply with the C
standard, I believe that C11 won't change that as well.

As a side note, it would be nice to know why a company insists in being
involved in the definition of a new standard, actively shaping how it
evolves and what is shoved into it, if the people behind it have absolutely
no intention to implement their own work.


Rui Maciel
 
Reply With Quote
 
Kaz Kylheku
Guest
Posts: n/a
 
      10-05-2012
On 2012-10-05, Rui Maciel <(E-Mail Removed)> wrote:
> Kaz Kylheku wrote:
>
>> I can't think of any computational problem that I cannot solve until
>> a C11 compiler falls out of the sky and lands in my lap.
>>
>> Is there some secret bit manipulation in the CPU that I cannot unlock
>> otherwise?

>
> This is a non-argument. If solving computational problems was the only
> metric then, as it's possible to solve them with programs coded purely in
> assembly, every high level programming language would be as useless as you
> are making C11 out to be. And this would be a silly thing to say.


If expressivity and power are also metrics, then some piffling upgrades to high
level languages do look genuinely useless.
 
Reply With Quote
 
Rui Maciel
Guest
Posts: n/a
 
      10-05-2012
Kaz Kylheku wrote:

> If expressivity and power are also metrics, then some piffling upgrades to
> high level languages do look genuinely useless.


They can't be metrics because they are vague to the point they are
essentially meaningless. We are referring to a set of features which might
be useful to some people, anf if C11 isn't supported then we simply can't
rely on them to exist.

You can spend hours discussing your indifference towards the features
introduced in C11, but you need to understand that that's only your
subjective opinion on a subject. Meanwhile, depriving the world of those
features is something which isn't adequately justified with an uninformed
"meh".


Rui Maciel
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Are any compiler vendors attempting to produce a C11 compiler? Dann Corbit C Programming 7 07-13-2012 01:05 PM
C11 reference book Ioannis Vranos C Programming 5 01-05-2012 12:01 AM
test-all test suite fails upon Ruby 1.8.5 compilation D. Krmpotic Ruby 4 08-03-2007 01:20 AM
test test test test test test test Computer Support 2 07-02-2003 06:02 PM



Advertisments