[Mesa-dev] [Bug 29573] New: [glsl2] struct within a struct causes an assertion failure
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Fri Aug 13 20:08:06 PDT 2010
https://bugs.freedesktop.org/show_bug.cgi?id=29573
Summary: [glsl2] struct within a struct causes an assertion
failure
Product: Mesa
Version: git
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: medium
Component: Mesa core
AssignedTo: mesa-dev at lists.freedesktop.org
ReportedBy: idr at freedesktop.org
In CorrectFull.frag, the following structure causes an assertion failure:
struct light1
{
float intensity;
vec3 position;
int test_int[2];
struct
{
int a;
float f;
} light2;
} lightVar;
This variable is never dereferenced in the program. The assertion failure is:
ir_validate.cpp:382: void check_node_type(ir_instruction*, void*): Assertion
`ir->type != glsl_type::error_type' failed.
This was first triggered after the commit listed below, but I believe that is
spurious. The actual assertion is that the declaration of a variable
lightVar_light2 has an error type. My guess is that rearranging optimization
passes have caused ir_validate to be called before this unused declaration
could be removed.
commit 2f4fe151681a6f6afe1d452eece6cf4144f44e49
Author: Eric Anholt <eric at anholt.net>
Date: Tue Aug 10 13:06:49 2010 -0700
glsl2: Move the common optimization passes to a helper function.
These are passes that we expect all codegen to be happy with. The
other lowering passes for Mesa IR are moved to the Mesa IR generator.
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the mesa-dev
mailing list