Hi;
This is no more than a single line in the document and/or part of --help. It
tells your audience what compilers they can use and what language elements are
available. All with a single line.
No can do. That's something related to the skeletons. So I will complete
their documentation, yes.
This puzzles me. You can't put a single line in for each language
telling the user what the baseline language is? I don't believe this has
anything to do with the skeletons, unless the skeletons are linked to a
different language, and in this case the baseline language is the
language version for the skeleton. I am truly mystified. You have
already said what the Bison language version choices are (see below),
what is being asked for is that you include them in the manual.
Something like, "Bison output is compilable using version C(), C++(),
and D()", where the language version used is inserted in the "()". You
might need to use prettier words but the sense is that you know the
answer, and the user's of Bison should know it also.
Perpetually Confused;
art
On 9/9/2022 11:52 PM, Akim Demaille wrote:
Hi Arthur,
Le 6 sept. 2022 à 23:05, Arthur Schwarz <h...@slipbits.com> a écrit :
Hi Akim;
I do mean the version of C/C++/D/Java should be stated.
It does make sense.
For example int he C case there is the K & R version.
We aim at C90. KnR support was dropped long ago:
* Noteworthy changes in release 2.6 (2012-07-19) [stable]
** Future changes
The next major release of Bison will drop support for the following
deprecated features. Please report disagreements to bug-bi...@gnu.org.
*** K&R C parsers
Support for generating parsers in K&R C will be removed. Parsers
generated for C support ISO C90, and are tested with ISO C99 and ISO C11
compilers.
And I can't remember anyone complaining about that.
Is this the relatively old version you mean. For C++ do you mean C++98, C++03,
C++11?
My first sentence was unclear, but contained the answer: C++98. And compatible
with more recent versions of the language. At some point I suppose we will be
able to drop C++03 and require at least C++11, but there's no urge for this.
All of these are relatively old.I expect that D and Java have the same
uncertainty.
That you use relatively old versions is meaningless because you haven't
specified the version. And suppose that the version baseline changes, and code
generated from prior versions are deprecated, or more insidious, the semantics
are altered. You've provided no guidance.
What are you exactly referring to here? I am not aware of any case where the
semantics are actually altered.
I do agree the skeletons should specific their language requirements, you are
absolutely right. But I dispute that changing the target language version
(e.g. KnR to C90) ever changed some semantics. It certainly broke builds for
people who were still using KnR C in 2012, but it did not alter semantics in
practice.
This is no more than a single line in the document and/or part of --help. It
tells your audience what compilers they can use and what language elements are
available. All with a single line.
No can do. That's something related to the skeletons. So I will complete
their documentation, yes.
Cheers!