* throw error if function or class declaration is not located at the top level or inside a block
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
* wrap initializer expr into virtual arrow function like instance field
* users can access super property in eval
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* Optimize String.prototype.trim method
* Turn off slow tests in test262. these tests are failed on some machine due to timeout
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* If the parser gets -1, the parser divide -1 into UnaryMinus and LiteralNode.
* This patch remove UnaryMinus and change Literal value negative
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* remove unused functions
* remove unused variables
* mark necessary but unused variables with UNUSED_VARIABLE
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
* In small config, we turn off SyntaxChecker for small binary size
* CompressibleString should get VMInstance instead of Context
* If ICU is disabled, we don't need unicode information in yarr
* Remove unused variable in yarr(RegExpJitTables)
* Fix lz4 compile error
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* Implement one of parsing error of module
* Fix one of stack usage error on FunctionObjectInlines
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* extract infrequently used m_rareData member from InterpretedCodeBlock
* InterpretedCodeBlockWithRareData handles InterpretedCodeBlockRareData inside itself
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
* NativeCodeBlock is newly added for NativeFunctionObject
* all interpreter-related info is moved into InterpretedCodeBlock
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
Since the debugger breakpoint generation requires a continuously increasing series of LOC indices
the statement node infos should be constructed in the beginning of their parsing functions.
Signed-off-by: Robert Fancsik <frobert@inf.u-szeged.hu>
* Set value as undefined when there is SyntaxError
* Fix memory leak related with throwing esprima::Error
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
The line info for each breakpoint can be calculated from the LOC index.
This patch resolves the problem, mentioned in #649.
Signed-off-by: Robert Fancsik <frobert@inf.u-szeged.hu>
* Implement export * as {name} from {src} feature
* Update Script::resolveExport for following new spec
* Update test262 driver for running test cases correctly
* Implement changes of ModuleNamespaceObject::[[*]]
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* Export default function declaration should treat as function declaration
* But there is no name on export function decl, we should the statement as function expression
* Check duplicate export name correctly
* Don't include FIXTURE files as testset in test262
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
but I don't want to add extra bytecodes for this.
and It is only needed when there is direct eval operation.
so I wrap each parameter block with small arrow function.
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>
* When there is arrow function on class ctor, we should use heap-allocated lex env for class ctor.
because we need to compute this variable on run-time
* when there is super expression with computed case, we should load this binding first for testing binding
Signed-off-by: Seonghyun Kim <sh8281.kim@samsung.com>