You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by Samisa Abeysinghe <sa...@yahoo.com> on 2004/06/07 12:53:03 UTC

destructor macros in Gdefine.h (and AXISCALL)

Hi All,
    In include/axis/server/GDefine.h I see the following lines of code.

   105  #if defined (__GNUC__)
   106  #if __GNUC_VERSION__ > 30000
   107  #define AXISDESTRUCTOR void* unused; void AXISAPI(destructor,(APINOPARAMS))
   108  #else
   109  #define AXISDESTRUCTOR void* unused; void*unused1;
   110  void AXISAPI(destructor,(APINOPARAMS))
   111  #endif
   112  #else
   113  #define AXISDESTRUCTOR void AXISAPI(destructor,(APINOPARAMS))
   114  #endif
   115  #endif

What is the purpose of this code segment? Is line 110 correct, or should it be appended to line
109? I get an error on line 110 when I compile this source on Rehat Advanced server 2.1

   BTW: I sent another question on GDefine macros earlier as well. Can we replace 
#define AXISCALL __attribute__((stdcall))
with
#define AXISCALL __attribute__((cdecl))
(in aother words why are we using stdcall and not cdecl? Any perticular reasons?)

   Would be of great help if someone could answer these.

Thanks,
Samisa...



	
		
__________________________________
Do you Yahoo!?
Friends.  Fun.  Try the all-new Yahoo! Messenger.
http://messenger.yahoo.com/ 

Re: destructor macros in Gdefine.h (and AXISCALL)

Posted by da...@opensource.lk.
Hi Samisa,

There were supposed to be an ugly hack to cater with differnt gcc versions.
But there are no longer needed. Remove them and run. May be I'll do it if
I find time

damitha

> Hi All,
>     In include/axis/server/GDefine.h I see the following lines of code.
>
>    105  #if defined (__GNUC__)
>    106  #if __GNUC_VERSION__ > 30000
>    107  #define AXISDESTRUCTOR void* unused; void
> AXISAPI(destructor,(APINOPARAMS))
>    108  #else
>    109  #define AXISDESTRUCTOR void* unused; void*unused1;
>    110  void AXISAPI(destructor,(APINOPARAMS))
>    111  #endif
>    112  #else
>    113  #define AXISDESTRUCTOR void AXISAPI(destructor,(APINOPARAMS))
>    114  #endif
>    115  #endif
>
> What is the purpose of this code segment? Is line 110 correct, or should
> it be appended to line
> 109? I get an error on line 110 when I compile this source on Rehat
> Advanced server 2.1
>
>    BTW: I sent another question on GDefine macros earlier as well. Can we
> replace
> #define AXISCALL __attribute__((stdcall))
> with
> #define AXISCALL __attribute__((cdecl))
> (in aother words why are we using stdcall and not cdecl? Any perticular
> reasons?)
>
>    Would be of great help if someone could answer these.
>
> Thanks,
> Samisa...
>
>
>
>
>
> __________________________________
> Do you Yahoo!?
> Friends.  Fun.  Try the all-new Yahoo! Messenger.
> http://messenger.yahoo.com/
>
>