This is the mail archive of the gsl-discuss@sourceware.org mailing list for the GSL project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Issue with Mathieu Function Code


On 09/09/2013 20:04, Brian Gladman wrote:
> On 09/09/2013 18:50, Patrick Alken wrote:
>> This sounds like a good idea, but we need to maintain binary
>> compatibility in future releases of GSL. It seems we could easily add
>> functions with _e names, since they are already implemented. But we need
>> to maintain the old interfaces as well, or at least mark them as
>> deprecated, so that people can link their programs to the new library
>> version without needing to recompile.
> 
> Ah, I hadn't realised that this was an issue.
> 
> Is there a define somewhere (or could we add one) that  would allow
> those users who are happy to recompile to update to a new interface?
> 
> What I have in mind is to have
> 
> ---------------------------------
> // the new function
> int function_e(...)
> {
> }
> 
> #ifdef MAINTAIN_BINARY_COMPATIBILITY
> 
> // keep the old function
> #define function function_e
> 
> #else
> 
> // add the new function
> double function(...)
> {
>     EVAL_RESULT(function_e(order, qq, zz, &result));
> }
> 
> #endif
> 
> This would also make it easy to move to v2.0.

Answering my own question, I could simply use GSL_MAJOR_VERSION

   Brian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]