yum-mirror/slang
Making it easier to work with shaders
git clone https://git.yummers.dev/yum-mirror/slang
812e47898
master
1//TEST:INTERPRET(filecheck=CHECK): 2 3Optional<Optional<int>> getNone() { return none; } 4 5void main() 6{ 7 Optional<Optional<Optional<int>>> val = Optional<Optional<int>>(5); 8 Optional<Optional<Optional<int>>> defaultVal1 = none; 9 Optional<Optional<Optional<int>>> defaultVal2 = getNone(); 10 11 // CHECK: 8 12 printf("%d\n", sizeof(val)); 13 14 // CHECK: success 15 if (defaultVal1.hasValue == defaultVal2.hasValue) 16 { 17 printf("success\n"); 18 } 19 else 20 { 21 printf("failure\n"); 22 } 23 24 // CHECK: value: 5 25 if (let x = val) 26 { 27 if (let y = x) 28 { 29 if (let z = y) 30 { 31 printf("value: %d\n", z); 32 } 33 } 34 } 35}