Just created https://github.com/openssl/openssl/pull/126 with what I hope is a workable solution.
Mike On Sat, Jun 7, 2014 at 9:55 AM, Mike Bland <[email protected]> wrote: > On Sat, Jun 7, 2014 at 4:33 AM, Tim Hudson <[email protected]> wrote: >> On 7/06/2014 4:02 AM, Dr. Stephen Henson wrote: >>> On Fri, Jun 06, 2014, Mike Bland wrote: >>> >>>> __func__ is defined in C99. What version of the SGI C compiler are you >>>> using? According to the following, as of version 7.4, the -c99 flag >>>> should enable this to compile: >>>> >>>> http://www.sgi.com/products/software/irix/tools/c.html >>>> >>> Note that VC++ under Windows doesn't support __func__ either. Well at least >>> the versions I tested didn't. > > Unfortunately I know next to nothing about VC++, but perhaps it also > supports a -C99 switch? > >> Adding in C99 dependencies in the code will run into a lot of non-C99 >> environments which still are being actively used. >> I think it is time to either decide that C99 is now a requirement (and >> there are features in C99 that would be nice to be able to use) or to >> decide that code which uses those features shouldn't go in - i.e. don't >> use those features so that platforms which don't support C99 are still >> supportable. >> >> Either approach leads to things breaking for at least some users ... >> >> In this particular case (the ssl/heartbeat_test.c) the use of __func__ >> really isn't critical and can easily be changed to not be a C99 __func__ >> dependency and pass in a test name in the 9 locations rather than the >> function name. That would fix the couple of platforms already noted that >> had issues. > > I certainly don't want to argue that unit testing alone is sufficient > reason to force the use of C99. (Well, were it my project... ;-) That > said, I imagine there's a lot more than the convenience of __func__ to > be gained from an upgrade. It is a fifteen-year-old standard; I'm just > getting my feet wet with the OpenSSL code, but even in my limited > experience with ssl/heartbeat_test.c, I'm getting a feel for the kind > of workarounds that an upgrade would render unnecessary. > > There's already been a recent thread debating whether older platforms > should be supported, or how they should be supported. Since I'm a n00b > here, I don't want to jump into the middle of a debate I don't have > enough context for, but that's how I see things for now. > > In the meanwhile, I'm looking into how to work around the lack of > support for __func__ on non-C99 platforms. > > Mike ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List [email protected] Automated List Manager [email protected]
