Names of built-in functions cannot be redeclared as functions
With ESSL 3.00, names of built-in functions cannot be redeclared as
functions and therefore overloading or redefining builtin functions
is an error.
This is fixed by inserting unmangled built-ins into the symbol table
and then checking if the new function declaration matches any of the
built-in in symbol table.
BUG=angleproject:1066
TEST=angle_unittests(new: ParseESSLFunctionsTest), dEQP Tests
dEQP-GLES3.functional.shaders.functions.invalid.overload_builtin_function*
(2 tests started passing with this change)
Change-Id: I0e027e588664e604f29c130028178315c3e21631
Reviewed-on: https://chromium-review.googlesource.com/287801Reviewed-by:
Zhenyao Mo <zmo@chromium.org>
Reviewed-by:
Jamie Madill <jmadill@chromium.org>
Tested-by:
Jamie Madill <jmadill@chromium.org>
Showing
Please
register
or
sign in
to comment