Correctly handle the Proxy IsCallable and IsConstructor information (#4264)

The `IsCallable(target)` and `IsConstructor(target)` info
can't be stored in the target/handler values.
If the input for the ProxyCreate was a revocable Proxy the original target's
callable/constructor information must be retained even after the
Proxy was revoked.

JerryScript-DCO-1.0-Signed-off-by: Peter Gal pgal.usz@partner.samsung.com
This commit is contained in:
Péter Gál
2020-11-17 10:38:25 +01:00
committed by GitHub
parent 7262b98021
commit 5d916fb8d4
6 changed files with 99 additions and 8 deletions
+4
View File
@@ -2128,6 +2128,10 @@ do \
#if ENABLED (JERRY_BUILTIN_PROXY)
/**
* Description of Proxy objects.
*
* A Proxy object's property list is used to store extra information:
* * The "header.u1.property_list_cp" 1st tag bit stores the IsCallable information.
* * The "header.u1.property_list_cp" 2nd tag bit stores the IsConstructor information.
*/
typedef struct
{