On Sat, 5 Oct 2013 19:55:16 +0200 Krzysztof Kosiński <tweenk...@gmail.com> wrote:
> 2013/10/5 John Emmas <john...@tiscali.co.uk>: > > From experience, I STRONGLY SUSPECT that the error is caused by these lines > > at the top of macro #2:- > > > > #define BILINEAR_INTERPOLATE_ONE_PIXEL_HELPER(pix, phase) \ > > do { \ > > __m128i xmm_wh, xmm_a, xmm_b; \ > > (void)xmm_ux4; /* suppress warning: unused variable 'xmm_ux4' */ > > \ > > > > // Rest of macro > > } while (0) > > > > In effect, all those variables are getting declared half way down the > > calling function (in this case, > > 'scaled_bilinear_scanline_sse2_8888_8888_SRC'). Standard 'C' does not allow > > you to declare variables half way down a function and unfortunately, MSVC is > > petty strict about it. FWIW macro #1 suffers from the same problem :-( > > The do / while block establishes a new scope, and in ANSI C you can > declare variables at the start of every scope, not only at the start > of a function, so I don't think this is the actual problem. > > It would be useful if you could pinpoint the commit which causes the > compilation to break. Andrea Canciani has already investigated the problem and submitted the fixes here: http://lists.freedesktop.org/archives/pixman/2013-September/002954.html -- Best regards, Siarhei Siamashka _______________________________________________ Pixman mailing list Pixman@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/pixman