-
Notifications
You must be signed in to change notification settings - Fork 392
Open
Description
The routines ?setijv
/?getijv
and ?setijm
/?getijm
are not strongly typed.
E.g. if you run gcc -P -C -E path/to/blis.h > blis.h.pp
the preprocess header will contain the following prototypes:
__attribute__ ((visibility ("default"))) void bli_ssetijv ( double ar, double ai, dim_t i, void* x, inc_t incx );
__attribute__ ((visibility ("default"))) void bli_dsetijv ( double ar, double ai, dim_t i, void* x, inc_t incx );
__attribute__ ((visibility ("default"))) void bli_csetijv ( double ar, double ai, dim_t i, void* x, inc_t incx );
__attribute__ ((visibility ("default"))) void bli_zsetijv ( double ar, double ai, dim_t i, void* x, inc_t incx );
This originates from
blis/frame/base/bli_setgetijv.h
Lines 44 to 54 in 827c50b
#define GENTPROT( ctype, ch, opname ) \ | |
\ | |
BLIS_EXPORT_BLIS void PASTEMAC(ch,opname) \ | |
( \ | |
double ar, \ | |
double ai, \ | |
dim_t i, \ | |
void* x, inc_t incx \ | |
); | |
INSERT_GENTPROT_BASIC( setijv ) |
Could these routines be strongly typed using float
/double
/scomplex
/dcomplex
? The reason I'm asking is because the missing type breaks some scripts for generating wrappers.
Metadata
Metadata
Assignees
Labels
No labels