On Wed, May 20, 2020 at 4:24 AM Iain Duncan <[email protected]> wrote:
>
> Hi Bill and others, I'm trying to clean up the torrent of warnings my project 
> is producing in Xcode now that it's pretty big, and this one has me stumped. 
> here's a snippet of working code:
>
> t_max_err s7_obj_to_max_atom(s7_scheme *s7, s7_pointer *s7_obj, t_atom *atom){
>
>     if( s7_is_boolean(s7_obj) ){
>
>         atom_setlong(atom, (int)s7_boolean(s7, s7_obj));
>
>     }
>
>
> I get the following warning for every use of s7_obj like the above:
>
> "Incompatible pointer types passing 's7_pointer *' (aka 'struct s7_cell **') 
> to parameter of type 's7_pointer' (aka 'struct s7_cell *'); dereference with 
> *"
>
>
> If I try letting XCode "fix" it, the compiler things I should be using 
> *s7_obj, which of course crashes (had to try it in case I was totally 
> misunderstanding...)
>
>
> Is there something I can do to not get this warning, or do I need to figure 
> out how to tell xcode to just shut up with that one?
>

This is the signature of s7_integer:

 s7_int s7_integer(s7_pointer p);

so both the xcode warning and auto-fix seems correct. The problem must
be elsewhere.
Perhaps the signature of s7_obj_to_max_atom should really be

 t_max_err s7_obj_to_max_atom(s7_scheme *s7, s7_pointer s7_obj, t_atom *atom);

?
_______________________________________________
Cmdist mailing list
[email protected]
https://cm-mail.stanford.edu/mailman/listinfo/cmdist

Reply via email to