Richard said:
Philip Potter said:
Richard Heathfield wrote:
The group of people posting in that thread who share your views
currently includes Richard Riley, Kenny McCormack, and - nobody else. At
least a dozen people have expressed a contrary view.
In this thread, the phrase being contested is CBFalconer's:
"What [a compiler] does in _any_ other mode [other than conforming mode]
is of no interest, and is off-topic, in this newsgroup."
This would be contested by anyone in your Moderate group and possibly by
some in your Conservative group.
Unlikely. After all, in non-conforming mode, a compiler can do anything it
likes - it can, for example, reject or mistranslate correct programs, and
it can accept incorrect programs (without producing a diagnostic message
for any syntax errors or constraint violations such a program may
contain). Without specifying in *which* ways a non-conforming mode does
not conform, a discussion of non-conforming mode is indeed of no interest
to comp.lang.c. A "Moderate" might reasonably take the view that a
/particular/ non-conforming mode could be full of quiet interest, and
indeed it might, but arbitrarily discarding conformance is not the
position of a conservative or even a moderate comp.lang.c subscriber.
But CBF said that what it does in _any_ other mode is off-topic. The
opposite view is not "arbitrarily discarding conformance" but "taking
interest in particular nonconforming modes", just like you said a
Moderate might agree with. ("For all x, x is offtopic" negated is "There
exists an x, such that x is ontopic".)
Indeed. In fact, I'm rather more liberal than most of those who have so far
expressed an opinion in that thread (but no more so than Chris, I think).
I would argue that the behaviour of any compiler invoked in a mode that
discards the rules of the language is not a behaviour that con/mod clc
subscribers would find particularly interesting as far as C is concerned.
(Those same people may, of course, find such a discussion absolutely
fascinating if it were set in a more appropriate context, such as
comp.programming or an implementation-specific group.)
Ah, now your response has enlightened me to something which I hadn't
considered before, which is this:
clc regulars are /not/ simply interested in standard C. They are also
interested in the C community, general practicalities when using C
compilers, tools for aiding C development, and others. None of the
following are mentioned in the C standard, yet they are discussed and
not clamped down on by netcops:
* Profilers (often mentioned as a reposte to "++i is faster than i++!"
and the like)
* Memory leak detectors, in general (talking about specific ones like
valgrind is offtopic though)
* Data structures and algorithms (a woefully inefficient program will be
fixed here rather than redirected to comp.programming)
* Lint and clones
* The presence of command-line switches on compilers in general
This final one is the crux of the matter in this subthread. Below you
ask "why gcc and msvc?". Because in their default mode, they are
nonconforming; yet many newbies to the group do not realise this and
compile their programs with a nonconforming compiler. In order to
explain their error to them, one explain not just that the default mode
is nonconforming, but /why/ it is nonconforming. This is certainly not
part of a discussion of standard C.
Further, the discussion of compiler switches is not restricted to
achieving a conforming mode. The regulars here advocate turning the
warning level on your compiler as high as possible on a regular basis;
this is way outside the scope of the C standard.
The regulars here even /give examples/ of bad behaviour from gcc in
default mode. This is a discussion of a particular nonconforming
compiler which I think is appropriate here.
The phrase '-ansi -pedantic -W -Wall' is of dubious topicality, but it
is always welcome.
[The phrase '-std=c99 -pedantic -W -Wall' is slightly less welcome
]