|
@@ -13,6 +13,10 @@ namespace Shader::IR {
|
|
|
class Block;
|
|
class Block;
|
|
|
|
|
|
|
|
struct AbstractSyntaxNode {
|
|
struct AbstractSyntaxNode {
|
|
|
|
|
+ struct NonTrivialDummy {
|
|
|
|
|
+ NonTrivialDummy() {}
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
enum class Type {
|
|
enum class Type {
|
|
|
Block,
|
|
Block,
|
|
|
If,
|
|
If,
|
|
@@ -25,7 +29,8 @@ struct AbstractSyntaxNode {
|
|
|
};
|
|
};
|
|
|
Type type{};
|
|
Type type{};
|
|
|
union {
|
|
union {
|
|
|
- Block* block{};
|
|
|
|
|
|
|
+ NonTrivialDummy dummy{};
|
|
|
|
|
+ Block* block;
|
|
|
struct {
|
|
struct {
|
|
|
U1 cond;
|
|
U1 cond;
|
|
|
Block* body;
|
|
Block* body;
|