SWGL has many compilation warnings under GCC
Categories
(Core :: Graphics: WebRender, defect)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox77 | --- | fixed |
People
(Reporter: jimb, Assigned: jimb)
Details
Attachments
(3 files)
Compiling SWGL under GCC emits enough warnings to fill my terminal buffer, which is a minor annoyance during development.
| Assignee | ||
Comment 1•5 years ago
|
||
When the software feature is enabled, a clause gets added to two match
statements, causing Rust to complain that another match clause is unreachable.
This patch makes the other match clause conditional on the absence of the
software feature.
Updated•5 years ago
|
| Assignee | ||
Comment 2•5 years ago
|
||
Provide an explicit copy constructor for the GCC VectorType polyfill. Since
VectorType has an assignment operator, GCC is uncomfortable faking a copy
constructor, so we have to provide one.
Make VectorType default constructor actually initialize the elements. When we
have a GLSL if whose condition varies from fragment to fragment, and whose
alternatives either assign to a variable or discard the fragment, we compile the
assignment to an if_then_else call that preserves the old elements for
fragments not taking the assignment's path. But if this is the initializing
assignment, the 'old value' operand to that if_then_else is uninitialized. We
could make the translator smarter about this, and have it not use predicated
assignment in such cases, but this fix is fine for now.
Make VectorType::wrap take its argument by const reference, to avoid weird ABI
'notes'.
Depends on D71443
| Assignee | ||
Comment 3•5 years ago
|
||
Add UNUSED marker to gl.cc function arguments.
Add GCC pragmas to ignore -Wunused-parameter and -Wunused-but-set-variable
warnings in the generated shaders. Since these are generated from GLSL, it is
hard to avoid the warnings by changing the code itself.
Avoid uninitialized values in vec4::operator[].
Depends on D71444
Comment 7•5 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/0ff89c708ad7
https://hg.mozilla.org/mozilla-central/rev/ef53eeea8602
https://hg.mozilla.org/mozilla-central/rev/4cd8258082d7
Description
•