Page 1 of 1

Winboard' specific language standard

PostPosted: 03 Mar 2009, 02:14
by Denis P. Mendoza
I was requested to compile a WIN64 version of Winboard_X (MSVC/ICC compatible). Though I finally made it to work, I was just curious to ask what exactly is the specific language standard of WB (as I saw some new options on the new ICC11). I'll be trying my luck on HG's modified winboard_X that's why I asked.

Possible values are:

c89
Conforms to the ISO/IEC 9899:1990 International Standard.

c99
Conforms to The ISO/IEC 9899:1999 International Standard.

gnu89
Conforms to ISO C90 plus GNU* extensions.

gnu++98
Conforms to the 1998 ISO C++ standard plus GNU extensions.

c++0x
Enable support for the following C++0x features:

Empty macro arguments

Variadic macros

Type long long

Trailing comma in enum definition

Concatenation of mixed-width string literals

Extended friend declarations

Use of ">>" to close two template argument lists

Relaxed rules for use of "typename"

Relaxed rules for disambiguation using the "template" keyword

Copy constructor does not need to be callable on direct reference

Binding to class rvalue

"extern template" to suppress instantiation of an entity

"auto" type specifier

decltype operator

static_assert

compliant __func__

lambda expressions



Thanks,

Denis

Re: Winboard' specific language standard

PostPosted: 03 Mar 2009, 09:07
by H.G.Muller
I am not sure WB complies with any standard. Kernighan & Ritchie type declarations are mixed with ANSI C in the same file. I am not much good at standards anyway. My only guideline is this: if it compiles without error and warnings when I do a plain "gcc -O2" compile under Ubuntu, or "gcc -O2 -mno-cygwin" under Windows+Cygwin, I am satisfied with it.

One thing is sure, though: WB is written in plain C, not C++.

Re: Winboard' specific language standard

PostPosted: 03 Mar 2009, 14:05
by Denis P. Mendoza
H.G.Muller wrote:I am not sure WB complies with any standard. Kernighan & Ritchie type declarations are mixed with ANSI C in the same file. I am not much good at standards anyway. My only guideline is this: if it compiles without error and warnings when I do a plain "gcc -O2" compile under Ubuntu, or "gcc -O2 -mno-cygwin" under Windows+Cygwin, I am satisfied with it.

One thing is sure, though: WB is written in plain C, not C++.



Many thanks HG. I only asked as I've searched for exact details about it and found nothing. I couldn't select the exact C standard stated in the new ICC11 compiler options mentioned (though not a necessity). I'll try compiling again your new development from Cygwin to MSVC (or ICC if possible).