1. 15 Sep, 2020 1 commit
    • Preprocessor related issue fix (#2378) · 9eaa69c2
      Chow authored
      * Preprocessor related fix
      
      1). Accoding to ESSL spec : All macro names containing two consecutive underscores ( __ ) are reserved for future use as predefined macro names, so just report a warning instead of error when the shader defines the macro names begining with  '__';
      
      2. According to spec:  If an implementation does not recognize the tokens following #pragma, then it will ignore that pragma, so report a compile-time warning intead of error for the following statement:
      #pragma debug(1.23)
      
      3. The 'defined' macro should be allowed to expand and '__LINE__' should be allowed to be replaced with its original line number (otherwise, other expanding macros may change this value).
      
      4. Add a flag 'indentifierSeen' in PPContext to indicate whether the any non-preprocessor tokens is existed before the extension directives, because the built-in symbols and functions are parsed before paring the user shader, so add a 'shaderSource' flag to check this error only for the user shader source;
      
      5. Add missing type int16 and uint16.
      
      * Add test results, remove restriction of #extension.
      
      1. Remove extension restriction in first line , as this is contraversy now.
      
      2. The following shader is compiled failed as glslang consider the keyword 'defined' can not be undefined(in the 9th line: "#define defined BBB")
      The shader is as following:
      According to ES3.0 spec: It is an error to undefine or to redefine a built-in (pre-defined) macro name.
      This rule is aimed to the  __LINE__,  __FILE__, __VERSION__ and  GL_ES,
      the keyword "defined" should not be restricted by this rule,
      so change the compile error to warning and make the following shader compile successfully.
      
      * 1. Using relaxedError to control error/warning report level. 2. remove #extension restriction. 3. Fix version related issue.
      
      1. Using relaxedError to control error/warning report level. 2. remove #extension restriction. 3. Fix version related issue.
      
      * Add test results
      
      * Turn conditional warnings about pragma to unconditional ones.
  2. 14 Sep, 2020 3 commits
  3. 13 Sep, 2020 2 commits
  4. 12 Sep, 2020 2 commits
  5. 08 Sep, 2020 2 commits
  6. 07 Sep, 2020 3 commits
  7. 03 Sep, 2020 1 commit
  8. 02 Sep, 2020 1 commit
  9. 26 Aug, 2020 2 commits
  10. 23 Aug, 2020 2 commits
  11. 21 Aug, 2020 1 commit
  12. 17 Aug, 2020 2 commits
  13. 15 Aug, 2020 1 commit
  14. 14 Aug, 2020 5 commits
  15. 13 Aug, 2020 1 commit
  16. 12 Aug, 2020 3 commits
  17. 10 Aug, 2020 1 commit
  18. 07 Aug, 2020 1 commit
  19. 06 Aug, 2020 2 commits
  20. 05 Aug, 2020 2 commits
  21. 04 Aug, 2020 2 commits