Am 14.04.20 um 07:51 schrieb Vahid Bashiri:
> int func(void *var,int val);
> typedef int (*SetVal)(void *, int);
> typedef struct {
> int val;
> SetVal setval;
> } my_struct;
> int main()
> {
>
> my_struct str1 = {0,func};
> my_struct str2 = {0,func};
> str1.setval(&str1,11);
> str2.setval(&str2,5);
> return 0;
> }
> int func(void *var,int val)
> {
> my_struct *tmp = (my_struct*)var;
> tmp->val = val;
> return 0;
> }
> I can reproduce this issue; it is definitely a bug. Plese report it in the bug tracker: https://sourceforge.net/p/sdcc/bugs/ Though looking at the asm, at first sight it looks more like an assembler bug rather than a compiler bug to me. Philipp
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Sdcc-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/sdcc-user
