Y
Yamin
I found some code that seems a bit weird and is refusing to compile on
GCC...it apparently used to compile fine on other comilers.
typedef void ASY_TESTPROC_T __((OIDC_T lastmatch, int compc, OIDC_T *compl,
....));
There are several other ASY_XXXX defintion following, but AST_TESTPROC_T is
the first one.
There is macro: __(x) defined which basically does this
iifdef __STDC__
# define __(x) x
#else
#define __(x)
doing this, the output should be:
typedef void ASY_TESTPROC_T (OIDC_T lastmatch, int compc, OIDC_T *compl,
....);
But on the output of the preprocessor, I get
typedef void ASY_TESTPROC_T ((OIDC_T lastmatch, int compc, OIDC_T *compl,
....));
The other ASY_XXX appear to come out as expected.
First of all: am I understanding this code correctly. Is it a function
pointer declaration? From what I've read about the __() macro, it is
normally used for function prototypes. Secondly, anyone have any ideas why
it might not compile?
Yamin
GCC...it apparently used to compile fine on other comilers.
typedef void ASY_TESTPROC_T __((OIDC_T lastmatch, int compc, OIDC_T *compl,
....));
There are several other ASY_XXXX defintion following, but AST_TESTPROC_T is
the first one.
There is macro: __(x) defined which basically does this
iifdef __STDC__
# define __(x) x
#else
#define __(x)
doing this, the output should be:
typedef void ASY_TESTPROC_T (OIDC_T lastmatch, int compc, OIDC_T *compl,
....);
But on the output of the preprocessor, I get
typedef void ASY_TESTPROC_T ((OIDC_T lastmatch, int compc, OIDC_T *compl,
....));
The other ASY_XXX appear to come out as expected.
First of all: am I understanding this code correctly. Is it a function
pointer declaration? From what I've read about the __() macro, it is
normally used for function prototypes. Secondly, anyone have any ideas why
it might not compile?
Yamin