[Bug 91645] Several -Woverloaded-virtual warnings when building mesa

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sat Aug 15 09:55:45 PDT 2015


https://bugs.freedesktop.org/show_bug.cgi?id=91645

            Bug ID: 91645
           Summary: Several -Woverloaded-virtual warnings when building
                    mesa
           Product: Mesa
           Version: unspecified
          Hardware: Other
                OS: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: glsl-compiler
          Assignee: idr at freedesktop.org
          Reporter: thakis at chromium.org
        QA Contact: intel-3d-bugs at lists.freedesktop.org

clang's -Woverloaded-virtual fires if a subclass overloads an virtual method
from a base class. The intent is to have this warning catch cases where the
subclass overrides a superclass method, but then the signature of the
superclass is changed and one forgets to update the subclass method, changing
the overload into an override.

Here's where this warning fires in mesa (this is with the version of mesa used
in Chromium, but I spot-checked on trunk and at least some of these are still
around). For methods that are supposed to be overloads, the fix is to make the
parameter lists match. For methods that are unrelated but have the same name,
the fix is to rename the subclass method to something else (the code is
correct, but confusing to both readers and compilers).



..\..\third_party\mesa\src\src\glsl\lower_discard_flow.cpp(64,22) : 
error(clang): 'lower_discard_flow_visitor::visit_enter' hides overloaded
virtual functions [-Werror,-Woverloaded-virtual]
   ir_visitor_status visit_enter(ir_loop_jump *ir);
                     ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(115,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_function *' vs 'ir_loop_jump *')
   virtual ir_visitor_status visit_enter(class ir_function *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(117,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_expression *' vs 'ir_loop_jump *')
   virtual ir_visitor_status visit_enter(class ir_expression *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(119,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_texture *' vs 'ir_loop_jump *')
   virtual ir_visitor_status visit_enter(class ir_texture *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(121,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_swizzle *' vs 'ir_loop_jump *')
   virtual ir_visitor_status visit_enter(class ir_swizzle *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(123,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_dereference_array *' vs 'ir_loop_jump *')
   virtual ir_visitor_status visit_enter(class ir_dereference_array *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(125,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_dereference_record *' vs 'ir_loop_jump *')
   virtual ir_visitor_status visit_enter(class ir_dereference_record *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(127,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_assignment *' vs 'ir_loop_jump *')
   virtual ir_visitor_status visit_enter(class ir_assignment *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(129,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_call *' vs 'ir_loop_jump *')
   virtual ir_visitor_status visit_enter(class ir_call *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(131,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_return *' vs 'ir_loop_jump *')
   virtual ir_visitor_status visit_enter(class ir_return *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(135,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_if *' vs 'ir_loop_jump *')
   virtual ir_visitor_status visit_enter(class ir_if *);
                             ^
1 error generated.




..\..\third_party\mesa\src\src\glsl\lower_jumps.cpp(388,17) :  error(clang):
'ir_lower_jumps_visitor::visit' hides overloaded virtual functions
[-Werror,-Woverloaded-virtual]
   virtual void visit(class ir_loop_jump * ir)
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(73,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_variable *' vs 'class ir_loop_jump
*')
   virtual void visit(class ir_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(74,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_expression *' vs 'class ir_loop_jump
*')
   virtual void visit(class ir_expression *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(75,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_texture *' vs 'class ir_loop_jump *')
   virtual void visit(class ir_texture *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(76,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_swizzle *' vs 'class ir_loop_jump *')
   virtual void visit(class ir_swizzle *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(77,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_variable *' vs 'class
ir_loop_jump *')
   virtual void visit(class ir_dereference_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(78,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_array *' vs 'class
ir_loop_jump *')
   virtual void visit(class ir_dereference_array *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(79,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_record *' vs 'class
ir_loop_jump *')
   virtual void visit(class ir_dereference_record *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(80,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_assignment *' vs 'class ir_loop_jump
*')
   virtual void visit(class ir_assignment *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(81,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_constant *' vs 'class ir_loop_jump
*')
   virtual void visit(class ir_constant *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(82,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_call *' vs 'class ir_loop_jump *')
   virtual void visit(class ir_call *) {}
                ^
..\..\third_party\mesa\src\src\glsl\lower_jumps.cpp(410,17) :  error(clang):
'ir_lower_jumps_visitor::visit' hides overloaded virtual functions
[-Werror,-Woverloaded-virtual]
   virtual void visit(class ir_return * ir)
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(73,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_variable *' vs 'class ir_return *')
   virtual void visit(class ir_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(74,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_expression *' vs 'class ir_return *')
   virtual void visit(class ir_expression *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(75,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_texture *' vs 'class ir_return *')
   virtual void visit(class ir_texture *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(76,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_swizzle *' vs 'class ir_return *')
   virtual void visit(class ir_swizzle *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(77,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_variable *' vs 'class
ir_return *')
   virtual void visit(class ir_dereference_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(78,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_array *' vs 'class
ir_return *')
   virtual void visit(class ir_dereference_array *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(79,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_record *' vs 'class
ir_return *')
   virtual void visit(class ir_dereference_record *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(80,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_assignment *' vs 'class ir_return *')
   virtual void visit(class ir_assignment *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(81,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_constant *' vs 'class ir_return *')
   virtual void visit(class ir_constant *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(82,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_call *' vs 'class ir_return *')
   virtual void visit(class ir_call *) {}
                ^
..\..\third_party\mesa\src\src\glsl\lower_jumps.cpp(432,17) :  error(clang):
'ir_lower_jumps_visitor::visit' hides overloaded virtual functions
[-Werror,-Woverloaded-virtual]
   virtual void visit(class ir_discard * ir)
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(73,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_variable *' vs 'class ir_discard *')
   virtual void visit(class ir_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(74,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_expression *' vs 'class ir_discard
*')
   virtual void visit(class ir_expression *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(75,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_texture *' vs 'class ir_discard *')
   virtual void visit(class ir_texture *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(76,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_swizzle *' vs 'class ir_discard *')
   virtual void visit(class ir_swizzle *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(77,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_variable *' vs 'class
ir_discard *')
   virtual void visit(class ir_dereference_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(78,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_array *' vs 'class
ir_discard *')
   virtual void visit(class ir_dereference_array *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(79,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_record *' vs 'class
ir_discard *')
   virtual void visit(class ir_dereference_record *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(80,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_assignment *' vs 'class ir_discard
*')
   virtual void visit(class ir_assignment *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(81,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_constant *' vs 'class ir_discard *')
   virtual void visit(class ir_constant *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(82,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_call *' vs 'class ir_discard *')
   virtual void visit(class ir_call *) {}
                ^
..\..\third_party\mesa\src\src\glsl\lower_jumps.cpp(512,17) :  error(clang):
'ir_lower_jumps_visitor::visit' hides overloaded virtual functions
[-Werror,-Woverloaded-virtual]
   virtual void visit(ir_if *ir)
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(73,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_variable *' vs 'ir_if *')
   virtual void visit(class ir_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(74,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_expression *' vs 'ir_if *')
   virtual void visit(class ir_expression *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(75,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_texture *' vs 'ir_if *')
   virtual void visit(class ir_texture *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(76,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_swizzle *' vs 'ir_if *')
   virtual void visit(class ir_swizzle *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(77,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_variable *' vs 'ir_if *')
   virtual void visit(class ir_dereference_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(78,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_array *' vs 'ir_if *')
   virtual void visit(class ir_dereference_array *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(79,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_record *' vs 'ir_if *')
   virtual void visit(class ir_dereference_record *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(80,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_assignment *' vs 'ir_if *')
   virtual void visit(class ir_assignment *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(81,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_constant *' vs 'ir_if *')
   virtual void visit(class ir_constant *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(82,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_call *' vs 'ir_if *')
   virtual void visit(class ir_call *) {}
                ^
..\..\third_party\mesa\src\src\glsl\lower_jumps.cpp(828,17) :  error(clang):
'ir_lower_jumps_visitor::visit' hides overloaded virtual functions
[-Werror,-Woverloaded-virtual]
   virtual void visit(ir_loop *ir)
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(73,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_variable *' vs 'ir_loop *')
   virtual void visit(class ir_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(74,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_expression *' vs 'ir_loop *')
   virtual void visit(class ir_expression *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(75,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_texture *' vs 'ir_loop *')
   virtual void visit(class ir_texture *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(76,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_swizzle *' vs 'ir_loop *')
   virtual void visit(class ir_swizzle *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(77,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_variable *' vs 'ir_loop
*')
   virtual void visit(class ir_dereference_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(78,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_array *' vs 'ir_loop *')
   virtual void visit(class ir_dereference_array *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(79,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_record *' vs 'ir_loop *')
   virtual void visit(class ir_dereference_record *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(80,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_assignment *' vs 'ir_loop *')
   virtual void visit(class ir_assignment *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(81,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_constant *' vs 'ir_loop *')
   virtual void visit(class ir_constant *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(82,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_call *' vs 'ir_loop *')
   virtual void visit(class ir_call *) {}
                ^
..\..\third_party\mesa\src\src\glsl\lower_jumps.cpp(943,17) :  error(clang):
'ir_lower_jumps_visitor::visit' hides overloaded virtual functions
[-Werror,-Woverloaded-virtual]
   virtual void visit(ir_function_signature *ir)
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(73,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_variable *' vs 'ir_function_signature
*')
   virtual void visit(class ir_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(74,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_expression *' vs
'ir_function_signature *')
   virtual void visit(class ir_expression *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(75,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_texture *' vs 'ir_function_signature
*')
   virtual void visit(class ir_texture *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(76,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_swizzle *' vs 'ir_function_signature
*')
   virtual void visit(class ir_swizzle *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(77,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_variable *' vs
'ir_function_signature *')
   virtual void visit(class ir_dereference_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(78,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_array *' vs
'ir_function_signature *')
   virtual void visit(class ir_dereference_array *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(79,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_record *' vs
'ir_function_signature *')
   virtual void visit(class ir_dereference_record *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(80,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_assignment *' vs
'ir_function_signature *')
   virtual void visit(class ir_assignment *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(81,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_constant *' vs 'ir_function_signature
*')
   virtual void visit(class ir_constant *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(82,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_call *' vs 'ir_function_signature *')
   virtual void visit(class ir_call *) {}
                ^
..\..\third_party\mesa\src\src\glsl\lower_jumps.cpp(989,17) :  error(clang):
'ir_lower_jumps_visitor::visit' hides overloaded virtual functions
[-Werror,-Woverloaded-virtual]
   virtual void visit(class ir_function * ir)
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(73,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_variable *' vs 'class ir_function *')
   virtual void visit(class ir_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(74,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_expression *' vs 'class ir_function
*')
   virtual void visit(class ir_expression *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(75,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_texture *' vs 'class ir_function *')
   virtual void visit(class ir_texture *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(76,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_swizzle *' vs 'class ir_function *')
   virtual void visit(class ir_swizzle *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(77,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_variable *' vs 'class
ir_function *')
   virtual void visit(class ir_dereference_variable *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(78,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_array *' vs 'class
ir_function *')
   virtual void visit(class ir_dereference_array *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(79,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_dereference_record *' vs 'class
ir_function *')
   virtual void visit(class ir_dereference_record *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(80,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_assignment *' vs 'class ir_function
*')
   virtual void visit(class ir_assignment *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(81,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_constant *' vs 'class ir_function *')
   virtual void visit(class ir_constant *) {}
                ^
..\..\third_party\mesa\src\src\glsl/ir_visitor.h(82,17) :  note(clang): hidden
overloaded virtual function 'ir_control_flow_visitor::visit' declared here:
type mismatch at 1st parameter ('class ir_call *' vs 'class ir_function *')
   virtual void visit(class ir_call *) {}
                ^
7 errors generated.



..\..\third_party\mesa\src\src\glsl\opt_constant_variable.cpp(52,30) : 
error(clang): '(anonymous
namespace)::ir_constant_variable_visitor::visit_enter' hides overloaded virtual
functions [-Werror,-Woverloaded-virtual]
   virtual ir_visitor_status visit_enter(ir_dereference_variable *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(111,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_loop *' vs 'ir_dereference_variable *')
   virtual ir_visitor_status visit_enter(class ir_loop *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(113,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_function_signature *' vs 'ir_dereference_variable *')
   virtual ir_visitor_status visit_enter(class ir_function_signature *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(115,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_function *' vs 'ir_dereference_variable *')
   virtual ir_visitor_status visit_enter(class ir_function *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(117,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_expression *' vs 'ir_dereference_variable *')
   virtual ir_visitor_status visit_enter(class ir_expression *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(119,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_texture *' vs 'ir_dereference_variable *')
   virtual ir_visitor_status visit_enter(class ir_texture *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(121,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_swizzle *' vs 'ir_dereference_variable *')
   virtual ir_visitor_status visit_enter(class ir_swizzle *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(123,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_dereference_array *' vs 'ir_dereference_variable *')
   virtual ir_visitor_status visit_enter(class ir_dereference_array *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(125,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_dereference_record *' vs 'ir_dereference_variable *')
   virtual ir_visitor_status visit_enter(class ir_dereference_record *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(131,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_return *' vs 'ir_dereference_variable *')
   virtual ir_visitor_status visit_enter(class ir_return *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(133,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_discard *' vs 'ir_dereference_variable *')
   virtual ir_visitor_status visit_enter(class ir_discard *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(135,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit_enter' declared here: type mismatch at 1st
parameter ('class ir_if *' vs 'ir_dereference_variable *')
   virtual ir_visitor_status visit_enter(class ir_if *);
                             ^
1 error generated.




..\..\third_party\mesa\src\src\glsl\opt_dead_code_local.cpp(100,30) : 
error(clang): '(anonymous namespace)::kill_for_derefs_visitor::visit' hides
overloaded virtual functions [-Werror,-Woverloaded-virtual]
   virtual ir_visitor_status visit(ir_swizzle *ir)
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(85,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit' declared here: type mismatch at 1st parameter
('class ir_rvalue *' vs 'ir_swizzle *')
   virtual ir_visitor_status visit(class ir_rvalue *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(86,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit' declared here: type mismatch at 1st parameter
('class ir_variable *' vs 'ir_swizzle *')
   virtual ir_visitor_status visit(class ir_variable *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(87,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit' declared here: type mismatch at 1st parameter
('class ir_constant *' vs 'ir_swizzle *')
   virtual ir_visitor_status visit(class ir_constant *);
                             ^
..\..\third_party\mesa\src\src\glsl/ir_hierarchical_visitor.h(88,30) : 
note(clang): hidden overloaded virtual function
'ir_hierarchical_visitor::visit' declared here: type mismatch at 1st parameter
('class ir_loop_jump *' vs 'ir_swizzle *')
   virtual ir_visitor_status visit(class ir_loop_jump *);
                             ^
1 error generated.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-3d-bugs/attachments/20150815/295b39a5/attachment-0001.html>


More information about the intel-3d-bugs mailing list