On 10 March 2013 15:15, Gerhard Wiesinger <li...@wiesinger.com> wrote: > Tried make clean and make distclean already before I reported the issue. > > If I'm suppressing "warning as errors" I'm still getting errors: > > hw/usb/hcd-xhci.c: In function ‘xhci_set_ep_dequeue’: > hw/usb/hcd-xhci.c:1471:5: error: too many arguments to function > ‘trace_usb_xhci_ep_set_dequeue’ > In file included from hw/usb/hcd-xhci.c:27:0: > ./trace.h:1052:58: note: declared here
> BTW: Isn't a new issue (around 2 month) but was very busy. Oh, right. Tracing functions moved from trace.h to the files in the trace/ subdirectory. This means that if you didn't do a make clean or distclean before doing the git update then the new makefile knows nothing about the old trace.h file and so won't delete it, but the compiler may still pull it in anyhow. However this happened a long time back which is why I didn't mention it as a possibility (it was discussed on the list at the time as a number of people including me ran into it). If you remove all the files: trace.c trace.h trace.c-timestamp trace.h-timestamp this should resolve the problem. This is an example of a longstanding problem we have, where the makefile's dependency rules aren't able to cope with changes to the project source file structure, and so clean, distclean and incremental build sometimes breaks across a git update. I think this is pretty intractable as a problem to solve; you can mitigate it by doing all your builds in a build directory rather than in the source tree itself, since then you can always just delete the whole build tree to get a definite from-scratch build. -- PMM