On Sat, Mar 25, 2017, 9:55 AM Ignazio Di Napoli <[email protected]> wrote:
> When I include stdints.h, the error is:
>
> cannot use C.uint32_t(bi.Time_reference_low) (type C.uint32_t) as type
> C.uint in assignment
>
If cgo follows the same rule as the Go spec, then it won't want to do
implicit conversations between types. Have you tried being explicit by
wrapping it in C.uint() ?
> on line:
>
> c.time_reference_low = C.uint32_t(bi.Time_reference_low)
>
> Even if in stdint.h there is:
>
> typedef unsigned int uint32_t;
>
> and the c is of type:
>
> #define SF_BROADCAST_INFO_VAR(coding_hist_size) \
> struct \
> { char description [256] ; \
> char originator [32] ; \
> char originator_reference [32] ; \
> char origination_date [10] ; \
> char origination_time [8] ; \
> unsigned int time_reference_low ; \
> unsigned int time_reference_high ; \
> short version ; \
> char umid [64] ; \
> char reserved [190] ; \
> unsigned int coding_history_size ; \
> char coding_history [coding_hist_size] ; \
> }
>
> I use gcc 6.2.0.
>
> Any idea?
>
> Thank you.
>
> --
> You received this message because you are subscribed to the Google Groups
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>
--
You received this message because you are subscribed to the Google Groups
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.