bf7b4b8890
This is a known deficiency of runtime effects, next step is to fix how they manage function signatures to solve the problem. Bug: skia:10939 Change-Id: Id934e0acdf774b03bd6edce78d7b2c077bdeae00 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/360603 Reviewed-by: John Stiles <johnstiles@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
31 lines
503 B
Plaintext
31 lines
503 B
Plaintext
/*#pragma settings NoInline*/
|
|
|
|
uniform half4 colorRed, colorGreen;
|
|
|
|
struct S { float x; int y; };
|
|
|
|
S returns_a_struct() {
|
|
S s;
|
|
s.x = 1;
|
|
s.y = 2;
|
|
return s;
|
|
}
|
|
|
|
float accepts_a_struct(S s) {
|
|
return s.x + float(s.y);
|
|
}
|
|
|
|
void modifies_a_struct(inout S s) {
|
|
s.x++;
|
|
s.y++;
|
|
}
|
|
|
|
half4 main() {
|
|
S s = returns_a_struct();
|
|
float x = accepts_a_struct(s);
|
|
modifies_a_struct(s);
|
|
|
|
bool valid = (x == 3) && (s.x == 2) && (s.y == 3);
|
|
return valid ? colorGreen : colorRed;
|
|
}
|