When building on Linux using clang++ and its standard library, libc++, the build fails with: In file included from glsl/link_varyings.cpp:33: In file included from ../../src/compiler/glsl/glsl_symbol_table.h:34: In file included from ../../src/compiler/glsl/ir.h:33: In file included from ../../src/compiler/glsl_types.h:29: In file included from /usr/bin/../include/c++/v1/string.h:61: /usr/include/string.h:518:12: error: exception specification in declaration does not match previous declaration virtual void visit(class ir_dereference_variable *) {} ^ extern int ffs (int __i) __THROW __attribute__ ((__const__)); ^ ../../src/util/bitscan.h:51:13: note: expanded from macro 'ffs' #define ffs __builtin_ffs ^ ../../src/util/bitscan.h:96:18: note: previous declaration is here const int i = ffs(*mask) - 1; ^ ../../src/util/bitscan.h:51:13: note: expanded from macro 'ffs' #define ffs __builtin_ffs ^ ../../src/compiler/glsl/ir_visitor.h:82:17: note: hidden overloaded virtual function 'ir_control_flow_visitor::visit' declared here: type mismatch at 1st parameter ('class ir_dereference_array *' vs 'ir_loop *') In file included from glsl/link_varyings.cpp:33: In file included from ../../src/compiler/glsl/glsl_symbol_table.h:34: In file included from ../../src/compiler/glsl/ir.h:33: In file included from ../../src/compiler/glsl_types.h:29: In file included from /usr/bin/../include/c++/v1/string.h:61: /usr/include/string.h:524:26: error: exception specification in declaration does not match previous declaration __extension__ extern int ffsll (long long int __ll) ^ ../../src/util/bitscan.h:68:15: note: expanded from macro 'ffsll' #define ffsll __builtin_ffsll ^ ../../src/util/bitscan.h:104:18: note: previous declaration is here const int i = ffsll(*mask) - 1; ^ ../../src/util/bitscan.h:68:15: note: expanded from macro 'ffsll' #define ffsll __builtin_ffsll Build worked fine until recently. git bisect says the following: ecd6fce2611e88ff8468a354cff8eda39f260a31 is the first bad commit commit ecd6fce2611e88ff8468a354cff8eda39f260a31 Author: Rob Clark <robdclark@gmail.com> Date: Wed Aug 31 17:44:01 2016 -0400 mesa/st: support lowering multi-planar YUV Support multi-planar YUV for external EGLImage's (currently just in the dma-buf import path) by lowering to multiple texture fetch's for each plane and CSC in shader. There was some discussion of alternative approaches for tracking the additional UV or U/V planes: https://lists.freedesktop.org/archives/mesa-dev/2016-September/127832.html They all seemed worse than pipe_resource::next Signed-off-by: Rob Clark <robdclark@gmail.com> :040000 040000 80840dcad2d468df7741746515b03247c41a1084 88f03e54885c7b5b1090fb09709e7daf66972941 M src
*** This bug has been marked as a duplicate of bug 97952 ***
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.