X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=src%2Ftypes%2Fdecl.c;h=df04656a8d41bab720b53a362ed018aa12701f94;hp=b4685f6de41efbdaec5c50129b845d33b86957c2;hb=c5b2de8ed1d92dd42f910d4347d9175f27e3acbb;hpb=c101a4de2983791d5892e60d765b73b6b3ccf6f8 diff --git a/src/types/decl.c b/src/types/decl.c index b4685f6..df04656 100644 --- a/src/types/decl.c +++ b/src/types/decl.c @@ -31,13 +31,13 @@ #define PSI_FUNC_REDIRS #include "php_psi_posix.h" -struct psi_decl *psi_decl_init(struct psi_decl_abi *abi, - struct psi_decl_arg *func, struct psi_plist *args) +struct psi_decl *psi_decl_init(struct psi_decl_arg *func, struct psi_plist *args) { struct psi_decl *d = calloc(1, sizeof(*d)); - d->abi = abi; + d->func = func; d->args = args; + return d; } @@ -128,7 +128,9 @@ bool psi_decl_validate(struct psi_data *data, struct psi_decl *decl, void *dl) bool psi_decl_validate_nodl(struct psi_data *data, struct psi_decl *decl) { - if (!psi_decl_abi_validate(data, decl->abi)) { + if (!decl->abi) { + decl->abi = psi_decl_abi_init("default"); + } else if (!psi_decl_abi_validate(data, decl->abi)) { data->error(data, decl->abi->token, PSI_WARNING, "Invalid calling convention: '%s'", decl->abi->token->text); return false;