On 11 July 2010 03:58, Jan Hudec <[email protected]> wrote: > On Sat, Jul 10, 2010 at 02:29:16 +0000, James Moschou wrote: >> Hello, >> >> I'm trying to subclass Clutter.Actor, I have: >> >> public override void allocate (ActorBox box, AllocationFlags flags) {... >> >> which generates: >> >> static void text_view_real_allocate (ClutterActor* base, ClutterActorBox* >> box, >> ClutterAllocationFlags flags) {... >> >> However at the line where this gets assigned to the class pointer, it has the >> error: "warning: assignment from incompatible pointer type". > > That would be a bug. When vala accepts to compile something, it should not > generate these warnings. > >> I think because the class pointer is expecting a "const" in front of >> "ClutterActorBox *box". > > No. Const can be added by assignment without any warnings. It can't be > removed, but the error would be different. > > It's more likely the use of pointer to base vs. pointer to derived (since > C does not have inheritance, they are incompatible pointers for C compiler). > > Can you please provide a simple test case where the problem appears? Report > a bug in bugzilla and attach the test there, please. > >> Is this known? > > There appeared many cases where this warning was generated in the past. Some > of them were fixed, some may have not been. Check the bugzilla whether you'll > see similar-looking bug there. If yes, just add your test case, if no, open > new bug. > >> Is there a workaround? > > You are not supposed to look at anything from the C compiler unless you are > binding C library for vala (writing a .vapi). So as long as it otherwise > works, disable C compiler warnings (you can tell valac to pass appropriate > options with '-X' (so e.g. '-X -w'). > > -- > Jan 'Bulb' Hudec <[email protected]> >
Here's the bug https://bugzilla.gnome.org/show_bug.cgi?id=624139 _______________________________________________ vala-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/vala-list
