<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Segfault loading War Thunder"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=92850#c57">Comment # 57</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Segfault loading War Thunder"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=92850">bug 92850</a>
              from <span class="vcard"><a class="email" href="mailto:ernstp@gmail.com" title="Ernst Sjöstrand <ernstp@gmail.com>"> <span class="fn">Ernst Sjöstrand</span></a>
</span></b>
        <pre>With current git I get a crash like this:

0x00007ffff26ff349 in glsl_to_tgsi_visitor::visit (this=0x7fffa2725600,
ir=0x7fffa271baf8) at state_tracker/st_glsl_to_tgsi.cpp:3161
3161       const glsl_type *sampler_type = ir->sampler->type;


(gdb) bt full
#0  0x00007ffff26ff349 in glsl_to_tgsi_visitor::visit (this=0x7fffa2725600,
ir=0x7fffa271baf8) at state_tracker/st_glsl_to_tgsi.cpp:3161
        result_src = {file = PROGRAM_UNDEFINED, index = 0, index2D = 0, swizzle
= 0, negate = 0, type = 13, reladdr = 0x0, reladdr2 = <optimized out>,
has_index2 = <optimized out>, 
          double_reg2 = <optimized out>, array_id = <optimized out>,
is_double_vertex_input = <optimized out>}
        coord = {file = PROGRAM_UNDEFINED, index = 0, index2D = 0, swizzle = 0,
negate = 0, type = 13, reladdr = 0x0, reladdr2 = <optimized out>, has_index2 =
<optimized out>, 
          double_reg2 = <optimized out>, array_id = <optimized out>,
is_double_vertex_input = <optimized out>}
        cube_sc = {file = PROGRAM_UNDEFINED, index = 0, index2D = 0, swizzle =
0, negate = 0, type = 13, reladdr = 0x0, reladdr2 = <optimized out>, has_index2
= <optimized out>, 
          double_reg2 = <optimized out>, array_id = <optimized out>,
is_double_vertex_input = <optimized out>}
        lod_info = {file = PROGRAM_UNDEFINED, index = 0, index2D = 0, swizzle =
0, negate = 0, type = 13, reladdr = 0x0, reladdr2 = <optimized out>, has_index2
= <optimized out>, 
          double_reg2 = <optimized out>, array_id = <optimized out>,
is_double_vertex_input = <optimized out>}
        projector = {file = PROGRAM_UNDEFINED, index = 0, index2D = 0, swizzle
= 0, negate = 0, type = 13, reladdr = 0x0, reladdr2 = <optimized out>,
has_index2 = <optimized out>, 
          double_reg2 = <optimized out>, array_id = <optimized out>,
is_double_vertex_input = <optimized out>}
        dx = {file = PROGRAM_UNDEFINED, index = 0, index2D = 0, swizzle = 0,
negate = 0, type = 13, reladdr = 0x0, reladdr2 = <optimized out>, has_index2 =
<optimized out>, 
          double_reg2 = <optimized out>, array_id = <optimized out>,
is_double_vertex_input = <optimized out>}
        dy = {file = PROGRAM_UNDEFINED, index = 0, index2D = 0, swizzle = 0,
negate = 0, type = 13, reladdr = 0x0, reladdr2 = <optimized out>, has_index2 =
<optimized out>, 
          double_reg2 = <optimized out>, array_id = <optimized out>,
is_double_vertex_input = <optimized out>}
        offset = {{file = PROGRAM_UNDEFINED, index = 0, index2D = 0, swizzle =
0, negate = 0, type = 13, reladdr = 0x0, reladdr2 = 0x0, has_index2 = false,
double_reg2 = false, 
            array_id = 0, is_double_vertex_input = false}, {file =
PROGRAM_UNDEFINED, index = 0, index2D = 0, swizzle = 0, negate = 0, type = 13,
reladdr = 0x0, reladdr2 = 0x0, 
            has_index2 = false, double_reg2 = false, array_id = 0,
is_double_vertex_input = false}, {file = PROGRAM_UNDEFINED, index = 0, index2D
= 0, swizzle = 0, negate = 0, 
            type = 13, reladdr = 0x0, reladdr2 = 0x0, has_index2 = false,
double_reg2 = false, array_id = 0, is_double_vertex_input = false}, {file =
4067491840, index = 0, 
            index2D = 0, swizzle = 89, negate = 12, type = 6, reladdr =
0x40000000, reladdr2 = 0x0, has_index2 = false, double_reg2 = false, array_id =
0, 
            is_double_vertex_input = false}}
        sample_index = <optimized out>
        component = <optimized out>
        levels_src = <optimized out>
        result_dst = <optimized out>
        coord_dst = <optimized out>
        cube_sc_dst = <optimized out>
        inst = <optimized out>
        opcode = <optimized out>
        sampler_type = <optimized out>
        sampler_index = <optimized out>
        is_cube_array = <optimized out>
        i = <optimized out>


(gdb) p *(ir->sampler)
$8 = {<ir_rvalue> = {<ir_instruction> = {<exec_node> = {next = 0x0, prev =
0x0}, _vptr.ir_instruction = 0x7ffff2e23b90 <vtable for
ir_dereference_variable+16>, 
      ir_type = ir_type_dereference_variable}, type = 0x7ffff2e3fcc0
<glsl_type::_sampler2D_type>}, <No data fields>}</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>