1case float_input 2 version 300 es 3 values 4 { 5 input float in0 = [ 1.123 | 0.75 | -512.0 | -72.13 | 199.91 | -1.123 | -0.75 | 512.0 | -72.13 | -199.91 ]; 6 output float out0 = [ 1.123 | 0.75 | -512.0 | -72.13 | 199.91 | -1.123 | -0.75 | 512.0 | -72.13 | -199.91 ]; 7 } 8 9 both "" 10 #version 300 es 11 precision highp float; 12 ${DECLARATIONS} 13 void main() 14 { 15 out0 = in0; 16 ${OUTPUT} 17 } 18 "" 19end 20 21case float_uniform 22 version 300 es 23 values 24 { 25 uniform float uni0 = [ 1.123 | 0.75 | -512.0 | -72.13 | 199.91 ]; 26 output float out0 = [ 1.123 | 0.75 | -512.0 | -72.13 | 199.91 ]; 27 } 28 29 both "" 30 #version 300 es 31 precision highp float; 32 ${DECLARATIONS} 33 uniform float uni0; 34 void main() 35 { 36 out0 = uni0; 37 ${OUTPUT} 38 } 39 "" 40end 41 42case float_0 43 version 300 es 44 values { output float out0 = 1.123; } 45 both "" 46 #version 300 es 47 precision highp float; 48 ${DECLARATIONS} 49 void main() 50 { 51 out0 = +1.123; 52 ${OUTPUT} 53 } 54 "" 55end 56 57case float_1 58 version 300 es 59 values { output float out0 = -1.123; } 60 both "" 61 #version 300 es 62 precision highp float; 63 ${DECLARATIONS} 64 void main() 65 { 66 out0 = -1.123; 67 ${OUTPUT} 68 } 69 "" 70end 71 72case float_2 73 version 300 es 74 values { output float out0 = 123.0; } 75 both "" 76 #version 300 es 77 precision highp float; 78 ${DECLARATIONS} 79 void main() 80 { 81 out0 = 123.; 82 ${OUTPUT} 83 } 84 "" 85end 86 87case float_3 88 version 300 es 89 values { output float out0 = 0.123; } 90 both "" 91 #version 300 es 92 precision highp float; 93 ${DECLARATIONS} 94 void main() 95 { 96 out0 = .123; 97 ${OUTPUT} 98 } 99 "" 100end 101 102case float_4 103 version 300 es 104 values { output float out0 = 123.0; } 105 both "" 106 #version 300 es 107 precision highp float; 108 ${DECLARATIONS} 109 void main() 110 { 111 out0 = 1.23e+2; 112 ${OUTPUT} 113 } 114 "" 115end 116 117case float_5 118 version 300 es 119 values { output float out0 = -123.0; } 120 both "" 121 #version 300 es 122 precision highp float; 123 ${DECLARATIONS} 124 void main() 125 { 126 out0 = -1.23E+2; 127 ${OUTPUT} 128 } 129 "" 130end 131 132case float_6 133 version 300 es 134 values { output float out0 = -123.0; } 135 both "" 136 #version 300 es 137 precision highp float; 138 ${DECLARATIONS} 139 void main() 140 { 141 out0 = -1.23e2; 142 ${OUTPUT} 143 } 144 "" 145end 146 147case float_7 148 version 300 es 149 values { output float out0 = 0.123; } 150 both "" 151 #version 300 es 152 precision highp float; 153 ${DECLARATIONS} 154 void main() 155 { 156 out0 = 1.23e-1; 157 ${OUTPUT} 158 } 159 "" 160end 161 162case float_8 163 version 300 es 164 values { output float out0 = 1000.0; } 165 both "" 166 #version 300 es 167 precision highp float; 168 ${DECLARATIONS} 169 void main() 170 { 171 out0 = 1e3; 172 ${OUTPUT} 173 } 174 "" 175end 176 177case float_f_suffix_0 178 version 300 es 179 values { output float out0 = 1.0; } 180 both "" 181 #version 300 es 182 precision mediump float; 183 ${DECLARATIONS} 184 void main () 185 { 186 ${SETUP} 187 float value = 1.0f; 188 out0 = value; 189 ${OUTPUT} 190 } 191 "" 192end 193 194case float_f_suffix_1 195 version 300 es 196 values { output float out0 = 1.0; } 197 both "" 198 #version 300 es 199 precision mediump float; 200 ${DECLARATIONS} 201 void main () 202 { 203 ${SETUP} 204 float value = 1.0F; 205 out0 = value; 206 ${OUTPUT} 207 } 208 "" 209end 210 211case int_0 212 version 300 es 213 values { output int out0 = 123; } 214 both "" 215 #version 300 es 216 precision highp float; 217 ${DECLARATIONS} 218 void main() 219 { 220 out0 = 123; 221 ${OUTPUT} 222 } 223 "" 224end 225 226case int_1 227 version 300 es 228 values { output int out0 = -321; } 229 both "" 230 #version 300 es 231 precision highp float; 232 ${DECLARATIONS} 233 void main() 234 { 235 out0 = -321; 236 ${OUTPUT} 237 } 238 "" 239end 240 241case int_2 242 version 300 es 243 values { output int out0 = 123; } 244 both "" 245 #version 300 es 246 precision highp float; 247 ${DECLARATIONS} 248 void main() 249 { 250 out0 = 0x7B; 251 ${OUTPUT} 252 } 253 "" 254end 255 256case int_3 257 version 300 es 258 values { output int out0 = 123; } 259 both "" 260 #version 300 es 261 precision highp float; 262 ${DECLARATIONS} 263 void main() 264 { 265 out0 = 0X7b; 266 ${OUTPUT} 267 } 268 "" 269end 270 271case int_4 272 version 300 es 273 values { output int out0 = 123; } 274 both "" 275 #version 300 es 276 precision highp float; 277 ${DECLARATIONS} 278 void main() 279 { 280 out0 = 0173; 281 ${OUTPUT} 282 } 283 "" 284end 285 286case bool_0 287 version 300 es 288 values { output bool out0 = true; } 289 both "" 290 #version 300 es 291 precision highp float; 292 ${DECLARATIONS} 293 void main() 294 { 295 out0 = true; 296 ${OUTPUT} 297 } 298 "" 299end 300 301case bool_1 302 version 300 es 303 values { output bool out0 = false; } 304 both "" 305 #version 300 es 306 precision highp float; 307 ${DECLARATIONS} 308 void main() 309 { 310 out0 = false; 311 ${OUTPUT} 312 } 313 "" 314end 315 316case const_float_global 317 version 300 es 318 values { output float out0 = 1000.0; } 319 320 both "" 321 #version 300 es 322 precision mediump float; 323 ${DECLARATIONS} 324 const float theConstant = 1000.0; 325 void main() 326 { 327 out0 = theConstant; 328 ${OUTPUT} 329 } 330 "" 331end 332 333case const_float_main 334 version 300 es 335 values { output float out0 = -1000.0; } 336 337 both "" 338 #version 300 es 339 precision mediump float; 340 ${DECLARATIONS} 341 void main() 342 { 343 const float theConstant = -1000.0; 344 out0 = theConstant; 345 ${OUTPUT} 346 } 347 "" 348end 349 350case const_float_function 351 version 300 es 352 values { output float out0 = -0.012; } 353 354 both "" 355 #version 300 es 356 precision mediump float; 357 ${DECLARATIONS} 358 float func() 359 { 360 const float theConstant = -0.012; 361 return theConstant; 362 } 363 void main() 364 { 365 out0 = func(); 366 ${OUTPUT} 367 } 368 "" 369end 370 371case const_float_scope 372 version 300 es 373 values { output float out0 = 1.0; } 374 375 both "" 376 #version 300 es 377 precision mediump float; 378 ${DECLARATIONS} 379 void main() 380 { 381 { 382 const float theConstant = 1.0; 383 out0 = theConstant; 384 } 385 ${OUTPUT} 386 } 387 "" 388end 389 390case const_float_scope_shawdowing_1 391 version 300 es 392 values { output float out0 = 1.0; } 393 394 both "" 395 #version 300 es 396 precision mediump float; 397 ${DECLARATIONS} 398 void main() 399 { 400 const float theConstant = 100.0; 401 { 402 const float theConstant = 1.0; 403 out0 = theConstant; 404 } 405 ${OUTPUT} 406 } 407 "" 408end 409 410case const_float_scope_shawdowing_2 411 version 300 es 412 values { output float out0 = 1.0; } 413 414 both "" 415 #version 300 es 416 precision mediump float; 417 ${DECLARATIONS} 418 const float theConstant = 100.0; 419 void main() 420 { 421 { 422 const float theConstant = 1.0; 423 out0 = theConstant; 424 } 425 ${OUTPUT} 426 } 427 "" 428end 429 430case const_float_scope_shawdowing_3 431 version 300 es 432 values { output float out0 = 1.0; } 433 434 both "" 435 #version 300 es 436 precision mediump float; 437 ${DECLARATIONS} 438 const float theConstant = 100.0; 439 void main() 440 { 441 const float theConstant = -100.0; 442 { 443 const float theConstant = 1.0; 444 out0 = theConstant; 445 } 446 ${OUTPUT} 447 } 448 "" 449end 450 451case const_float_scope_shawdowing_4 452 version 300 es 453 values { output float out0 = 2.0; } 454 455 both "" 456 #version 300 es 457 precision mediump float; 458 ${DECLARATIONS} 459 const float theConstant = 100.0; 460 float func() 461 { 462 const float theConstant = 2.0; 463 return theConstant; 464 } 465 void main() 466 { 467 const float theConstant = -100.0; 468 { 469 const float theConstant = 1.0; 470 out0 = func(); 471 } 472 ${OUTPUT} 473 } 474 "" 475end 476 477case const_float_operations_with_const 478 version 300 es 479 values { output float out0 = 21.0; } 480 481 both "" 482 #version 300 es 483 precision mediump float; 484 ${DECLARATIONS} 485 const float theGlobalConstant = 10.0; 486 float func() 487 { 488 const float theConstant = 2.0; 489 return theConstant; 490 } 491 void main() 492 { 493 const float theConstant = -100.0; 494 { 495 const float theConstant = 1.0; 496 out0 = func() * theGlobalConstant + theConstant; 497 } 498 ${OUTPUT} 499 } 500 "" 501end 502 503case const_float_assignment_1 504 version 300 es 505 values { output float out0 = 10.0; } 506 507 both "" 508 #version 300 es 509 precision mediump float; 510 ${DECLARATIONS} 511 void main() 512 { 513 const float theConstant1 = 10.0; 514 const float theConstant2 = theConstant1; 515 out0 = theConstant2; 516 ${OUTPUT} 517 } 518 "" 519end 520 521case const_float_assignment_2 522 version 300 es 523 values { output float out0 = 10.0; } 524 525 both "" 526 #version 300 es 527 precision mediump float; 528 ${DECLARATIONS} 529 void main() 530 { 531 const float theConstant1 = 10.0; 532 { 533 const float theConstant2 = theConstant1; 534 out0 = theConstant2; 535 } 536 ${OUTPUT} 537 } 538 "" 539end 540 541case const_float_assignment_3 542 version 300 es 543 values { output float out0 = 10.0; } 544 545 both "" 546 #version 300 es 547 precision mediump float; 548 ${DECLARATIONS} 549 const float theConstant1 = 10.0; 550 void main() 551 { 552 const float theConstant2 = theConstant1; 553 out0 = theConstant2; 554 ${OUTPUT} 555 } 556 "" 557end 558 559case const_float_assignment_4 560 version 300 es 561 values { output float out0 = 10.0; } 562 563 both "" 564 #version 300 es 565 precision mediump float; 566 ${DECLARATIONS} 567 const float theConstant1 = 10.0; 568 float func() 569 { 570 const float theConstant2 = theConstant1; 571 return theConstant2; 572 } 573 void main() 574 { 575 out0 = func(); 576 ${OUTPUT} 577 } 578 "" 579end 580 581case const_float_assign_uniform 582 version 300 es 583 expect compile_fail 584 values { output float out0 = 10.0; } 585 both "" 586 #version 300 es 587 precision mediump float; 588 ${DECLARATIONS} 589 uniform float theUniform; 590 void main() 591 { 592 const float theConstant = theUniform; 593 out0 = theConstant; 594 ${OUTPUT} 595 } 596 "" 597end 598 599case const_float_assign_varying 600 version 300 es 601 expect compile_fail 602 values { output float out0 = 10.0; } 603 vertex "" 604 #version 300 es 605 ${VERTEX_DECLARATIONS} 606 out float theVarying; 607 void main() 608 { 609 theVarying = 1.0; 610 gl_Position = vec(1.0); 611 } 612 "" 613 fragment "" 614 #version 300 es 615 precision mediump float; 616 ${FRAGMENT_DECLARATIONS} 617 in float theVarying; 618 void main() 619 { 620 const float theConstant = theVarying; 621 out0 = theConstant; 622 ${FRAGMENT_OUTPUT} 623 } 624 "" 625end 626 627case const_float_function_gotcha 628 version 300 es 629 desc "Function constant parameters are not really constants, so using them as constant expressions should fail." 630 expect compile_fail 631 values { output float out0 = 20.0; } 632 both "" 633 #version 300 es 634 precision mediump float; 635 ${DECLARATIONS} 636 float func(const float gotcha) 637 { 638 const float theConstant2 = gotcha; 639 return theConstant2*2.0; 640 } 641 void main() 642 { 643 const float theConstant = 10.0; 644 out0 = func(theConstant); 645 ${OUTPUT} 646 } 647 "" 648end 649 650case const_float_from_int 651 version 300 es 652 values { output float out0 = 10.0; } 653 654 both "" 655 #version 300 es 656 precision mediump float; 657 ${DECLARATIONS} 658 const float theConstant = float(10); 659 void main() 660 { 661 out0 = theConstant; 662 ${OUTPUT} 663 } 664 "" 665end 666 667case const_float_from_vec2 668 version 300 es 669 values { output float out0 = 10.0; } 670 671 both "" 672 #version 300 es 673 precision mediump float; 674 ${DECLARATIONS} 675 const float theConstant = vec2(1.0, 10.0).y; 676 void main() 677 { 678 out0 = theConstant; 679 ${OUTPUT} 680 } 681 "" 682end 683 684case const_float_from_vec3 685 version 300 es 686 values { output float out0 = 10.0; } 687 688 both "" 689 #version 300 es 690 precision mediump float; 691 ${DECLARATIONS} 692 const float theConstant = vec3(1.0, 10.0, 20.0).y; 693 void main() 694 { 695 out0 = theConstant; 696 ${OUTPUT} 697 } 698 "" 699end 700 701case const_float_from_vec4 702 version 300 es 703 values { output float out0 = 10.0; } 704 705 both "" 706 #version 300 es 707 precision mediump float; 708 ${DECLARATIONS} 709 const float theConstant = vec4(1.0, 10.0, 20.0, -10.0).y; 710 void main() 711 { 712 out0 = theConstant; 713 ${OUTPUT} 714 } 715 "" 716end 717 718case const_float_assign_variable_1 719 version 300 es 720 expect compile_fail 721 values { output float out0 = 20.0; } 722 both "" 723 #version 300 es 724 precision mediump float; 725 ${DECLARATIONS} 726 void main() 727 { 728 float theVariable = 20.0; 729 const float theConstant = theVariable; 730 out0 = theConstant; 731 ${OUTPUT} 732 } 733 "" 734end 735 736case const_float_assign_variable_2 737 version 300 es 738 expect compile_fail 739 values { output float out0 = 50.0; } 740 both "" 741 #version 300 es 742 precision mediump float; 743 ${DECLARATIONS} 744 void main() 745 { 746 float theVariable = 20.0; 747 theVariable += 30.0; 748 const float theConstant = theVariable; 749 out0 = theConstant; 750 ${OUTPUT} 751 } 752 "" 753end 754 755case const_float_assign_user_func 756 version 300 es 757 expect compile_fail 758 values { output float out0 = 50.0; } 759 both "" 760 #version 300 es 761 precision mediump float; 762 ${DECLARATIONS} 763 float func() 764 { 765 return 50.0; 766 } 767 void main() 768 { 769 const float theConstant = func(); 770 out0 = theConstant; 771 ${OUTPUT} 772 } 773 "" 774end 775 776case const_mat_multiply 777 version 300 es 778 values { output vec2 out0 = vec2(4.0, 4.0); } 779 both "" 780 #version 300 es 781 precision mediump float; 782 ${DECLARATIONS} 783 784 const mat4x2 matA = mat4x2(2.0, 4.0, 8.0, 16.0, 32.0, 64.0, 128.0, 256.0); 785 const mat4x2 matB = mat4x2(1.0/2.0, 1.0/4.0, 1.0/8.0, 1.0/16.0, 1.0/32.0, 1.0/64.0, 1.0/128.0, 1.0/256.0); 786 787 void main() 788 { 789 mat4x2 result = matrixCompMult(matA, matB); 790 out0 = result * vec4(1.0, 1.0, 1.0, 1.0); 791 ${OUTPUT} 792 } 793 "" 794end 795 796case int_decimal 797 version 300 es 798 values { output int out0 = 7; } 799 both "" 800 #version 300 es 801 ${DECLARATIONS} 802 void main () 803 { 804 ${SETUP} 805 int value = 7; 806 out0 = value; 807 ${OUTPUT} 808 } 809 "" 810end 811 812case int_octal 813 version 300 es 814 values { output int out0 = 15; } 815 both "" 816 #version 300 es 817 ${DECLARATIONS} 818 void main () 819 { 820 ${SETUP} 821 int value = 017; 822 out0 = value; 823 ${OUTPUT} 824 } 825 "" 826end 827 828case int_hexadecimal_0 829 version 300 es 830 values { output int out0 = 47; } 831 both "" 832 #version 300 es 833 ${DECLARATIONS} 834 void main () 835 { 836 ${SETUP} 837 int value = 0x2f; 838 out0 = value; 839 ${OUTPUT} 840 } 841 "" 842end 843 844case int_hexadecimal_1 845 version 300 es 846 values { output int out0 = 47; } 847 both "" 848 #version 300 es 849 ${DECLARATIONS} 850 void main () 851 { 852 ${SETUP} 853 int value = 0X2f; 854 out0 = value; 855 ${OUTPUT} 856 } 857 "" 858end 859 860case uint_decimal_0 861 version 300 es 862 values { output uint out0 = 7; } 863 both "" 864 #version 300 es 865 ${DECLARATIONS} 866 void main () 867 { 868 ${SETUP} 869 uint value = 7u; 870 out0 = value; 871 ${OUTPUT} 872 } 873 "" 874end 875 876case uint_decimal_1 877 version 300 es 878 values { output uint out0 = 7; } 879 both "" 880 #version 300 es 881 ${DECLARATIONS} 882 void main () 883 { 884 ${SETUP} 885 uint value = 7U; 886 out0 = value; 887 ${OUTPUT} 888 } 889 "" 890end 891 892case uint_decimal_2 893 version 300 es 894 values { output uint out0 = 0; } 895 both "" 896 #version 300 es 897 ${DECLARATIONS} 898 void main () 899 { 900 ${SETUP} 901 uint value = 0u; 902 out0 = value; 903 ${OUTPUT} 904 } 905 "" 906end 907 908case uint_decimal_3 909 version 300 es 910 values { output uint out0 = 0; } 911 both "" 912 #version 300 es 913 ${DECLARATIONS} 914 void main () 915 { 916 ${SETUP} 917 uint value = 0U; 918 out0 = value; 919 ${OUTPUT} 920 } 921 "" 922end 923 924case uint_octal_0 925 version 300 es 926 values { output uint out0 = 15; } 927 both "" 928 #version 300 es 929 ${DECLARATIONS} 930 void main () 931 { 932 ${SETUP} 933 uint value = 017u; 934 out0 = value; 935 ${OUTPUT} 936 } 937 "" 938end 939 940case uint_octal_1 941 version 300 es 942 values { output uint out0 = 15; } 943 both "" 944 #version 300 es 945 ${DECLARATIONS} 946 void main () 947 { 948 ${SETUP} 949 uint value = 017U; 950 out0 = value; 951 ${OUTPUT} 952 } 953 "" 954end 955 956case uint_hexadecimal_0 957 version 300 es 958 values { output uint out0 = 47; } 959 both "" 960 #version 300 es 961 ${DECLARATIONS} 962 void main () 963 { 964 ${SETUP} 965 uint value = 0x2fU; 966 out0 = value; 967 ${OUTPUT} 968 } 969 "" 970end 971 972case uint_hexadecimal_1 973 version 300 es 974 values { output uint out0 = 47; } 975 both "" 976 #version 300 es 977 ${DECLARATIONS} 978 void main () 979 { 980 ${SETUP} 981 uint value = 0X2fu; 982 out0 = value; 983 ${OUTPUT} 984 } 985 "" 986end 987 988case int_from_uint 989 expect compile_fail 990 version 300 es 991 both "" 992 #version 300 es 993 ${DECLARATIONS} 994 void main () 995 { 996 int value = 7u; 997 ${POSITION_FRAG_COLOR} = vec4(0.0); 998 } 999 "" 1000end 1001 1002case int_from_uint_2 1003 expect compile_fail 1004 version 300 es 1005 both "" 1006 #version 300 es 1007 ${DECLARATIONS} 1008 void main () 1009 { 1010 int value = 0u; 1011 ${POSITION_FRAG_COLOR} = vec4(0.0); 1012 } 1013 "" 1014end 1015 1016case uint_from_int 1017 expect compile_fail 1018 version 300 es 1019 both "" 1020 #version 300 es 1021 ${DECLARATIONS} 1022 void main () 1023 { 1024 uint value = 7; 1025 ${POSITION_FRAG_COLOR} = vec4(0.0); 1026 } 1027 "" 1028end 1029 1030case uint_from_int_2 1031 expect compile_fail 1032 version 300 es 1033 both "" 1034 #version 300 es 1035 ${DECLARATIONS} 1036 void main () 1037 { 1038 uint value = 0; 1039 ${POSITION_FRAG_COLOR} = vec4(0.0); 1040 } 1041 "" 1042end 1043 1044case int_from_float 1045 expect compile_fail 1046 version 300 es 1047 both "" 1048 #version 300 es 1049 ${DECLARATIONS} 1050 void main () 1051 { 1052 int value = 7.0; 1053 ${POSITION_FRAG_COLOR} = vec4(0.0); 1054 } 1055 "" 1056end 1057 1058case uint_from_float 1059 expect compile_fail 1060 version 300 es 1061 both "" 1062 #version 300 es 1063 ${DECLARATIONS} 1064 void main () 1065 { 1066 uint value = 7.0; 1067 ${POSITION_FRAG_COLOR} = vec4(0.0); 1068 } 1069 "" 1070end 1071 1072case bool_from_int 1073 expect compile_fail 1074 version 300 es 1075 both "" 1076 #version 300 es 1077 ${DECLARATIONS} 1078 void main () 1079 { 1080 bool value = 1; 1081 ${POSITION_FRAG_COLOR} = vec4(0.0); 1082 } 1083 "" 1084end 1085 1086case bool_from_uint 1087 expect compile_fail 1088 version 300 es 1089 both "" 1090 #version 300 es 1091 ${DECLARATIONS} 1092 void main () 1093 { 1094 bool value = 1u; 1095 ${POSITION_FRAG_COLOR} = vec4(0.0); 1096 } 1097 "" 1098end 1099 1100case bool_from_float 1101 expect compile_fail 1102 version 300 es 1103 both "" 1104 #version 300 es 1105 ${DECLARATIONS} 1106 void main () 1107 { 1108 bool value = 1.0; 1109 ${POSITION_FRAG_COLOR} = vec4(0.0); 1110 } 1111 "" 1112end 1113 1114case float_int_f_suffix_0 1115 expect compile_fail 1116 version 300 es 1117 both "" 1118 #version 300 es 1119 precision mediump float; 1120 ${DECLARATIONS} 1121 void main () 1122 { 1123 ${SETUP} 1124 float value = 1f; 1125 ${POSITION_FRAG_COLOR} = vec4(0.0); 1126 } 1127 "" 1128end 1129 1130case float_int_f_suffix_1 1131 expect compile_fail 1132 version 300 es 1133 both "" 1134 #version 300 es 1135 precision mediump float; 1136 ${DECLARATIONS} 1137 void main () 1138 { 1139 ${SETUP} 1140 float value = 1F; 1141 ${POSITION_FRAG_COLOR} = vec4(0.0); 1142 } 1143 "" 1144end 1145 1146case int_l_suffix 1147 expect compile_fail 1148 version 300 es 1149 both "" 1150 #version 300 es 1151 ${DECLARATIONS} 1152 void main () 1153 { 1154 int value = 1l; 1155 ${POSITION_FRAG_COLOR} = vec4(0.0); 1156 } 1157 "" 1158end 1159 1160case uint_ul_suffix 1161 expect compile_fail 1162 version 300 es 1163 both "" 1164 #version 300 es 1165 ${DECLARATIONS} 1166 void main () 1167 { 1168 uint value = 1ul; 1169 ${POSITION_FRAG_COLOR} = vec4(0.0); 1170 } 1171 "" 1172end 1173 1174case invalid_octal_0 1175 expect compile_fail 1176 version 300 es 1177 both "" 1178 #version 300 es 1179 ${DECLARATIONS} 1180 void main () 1181 { 1182 int value = 018; 1183 ${POSITION_FRAG_COLOR} = vec4(0.0); 1184 } 1185 "" 1186end 1187 1188case invalid_octal_1 1189 expect compile_fail 1190 version 300 es 1191 both "" 1192 #version 300 es 1193 ${DECLARATIONS} 1194 void main () 1195 { 1196 uint value = 09U; 1197 ${POSITION_FRAG_COLOR} = vec4(0.0); 1198 } 1199 "" 1200end 1201 1202case invalid_hexadecimal_0 1203 expect compile_fail 1204 version 300 es 1205 both "" 1206 #version 300 es 1207 ${DECLARATIONS} 1208 void main () 1209 { 1210 int value = 0x2g7; 1211 ${POSITION_FRAG_COLOR} = vec4(0.0); 1212 } 1213 "" 1214end 1215 1216case invalid_hexadecimal_1 1217 expect compile_fail 1218 version 300 es 1219 both "" 1220 #version 300 es 1221 ${DECLARATIONS} 1222 void main () 1223 { 1224 uint value = 0X1h7u; 1225 ${POSITION_FRAG_COLOR} = vec4(0.0); 1226 } 1227 "" 1228end 1229