[openssl-dev] [openssl.org #4479] ROLLUP PATCH: OS X 10.8 (x86_64): Compile errors when using "no-asm -ansi"

Jeffrey Walton noloader at gmail.com
Fri Mar 25 17:55:26 UTC 2016


> Just out of interest, what requirement is there to be able to build with
> compilers which support only a 27 year old version of C which was superseded
> 17 years ago? I can't imagine much need to build now with compilers which
> don't support at least the most popular features of C99 like inline.

I can't really answer what's the reason for ANSI C or std=c90. The
project sets its goals, so I'll have to leave that up to folks like
Dr. Henson, Andy, Richard, Matt and Viktor.

What I've found is compiler have personalities. Each will tolerate a
certain amount of non-standardness and make you think the code is OK.
Sometimes its done insidiously under the guise of
implementation-defined.

In a vacuum, its mostly useless. In the big picture, when taken and
mixed with all the other personalities, it leads to more robust code
by driving out the non-standard parts tolerated by the personality.
You are left with a union that can run nearly anywhere without
trouble.

I've also found that once the testing infrastructure is sound, its
easy to support 10 or 20 years. That's only 2 or 3 major revisions of
<Standard X>. Thorough testing will let you know when you're not
meeting your goals. You'll find it before the user, and the fix will
be checked in before a user even notices.

In another project I work with, we're happy to support the old stuff
like C++03. We don't want to dictate policy, and we want the user to
have choices. If you want to build on a 10 or 15 year old system and
it makes you happy, then hat's off to you.

Jeff


More information about the openssl-dev mailing list