davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								47bc72bcf6 
								
							 
						 
						
							
							
								
								LibJS: Correctly handle Unicode characters in JS source text  
							
							... 
							
							
							
							Also recognize additional white space characters. 
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								4d6502de42 
								
							 
						 
						
							
							
								
								LibJS: Disallow standalone super expression  
							
							
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								a8b25d6c36 
								
							 
						 
						
							
							
								
								LibJS: Handle '++' and '--' more correctly within expression  
							
							
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								5f344f7ca3 
								
							 
						 
						
							
							
								
								LibJS: Check that 'let' is followed by declaration before matching it  
							
							... 
							
							
							
							Since 'let' is a valid variable name (in non-strict mode) let may not be
the start of a declaration but just an identifier. 
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								179c48e1a4 
								
							 
						 
						
							
							
								
								LibJS: Add optional extra strict checks in parse_binding_pattern  
							
							
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								f1f338edcd 
								
							 
						 
						
							
							
								
								LibJS: Tighten default values in formal parameter parsing  
							
							... 
							
							
							
							Disallow default parameter for rest parameters.
Disallow yield expressions as default values. 
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								4989e79c45 
								
							 
						 
						
							
							
								
								LibJS: Allow yielding a class  
							
							
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								19582ccad8 
								
							 
						 
						
							
							
								
								LibJS: Treat yield as an identifier in more non-generator contexts  
							
							... 
							
							
							
							And disallow some cases where we are in a generator context. 
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								26177b1826 
								
							 
						 
						
							
							
								
								LibJS: Add more duplicated declarations detection  
							
							... 
							
							
							
							This is a small step in the right direction although the amount of
different checks is becoming unsustainable. In the future we probably
want to have the current_scope handle all declarations. 
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								085c7df895 
								
							 
						 
						
							
							
								
								LibJS: Be more strict about the lhs of a for in/of loop  
							
							... 
							
							
							
							This is not entirely correct as really Object- and ArrayExpressions are
not allowed but that requires a bigger refactoring of for statement
parsing. 
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								106f9e30d7 
								
							 
						 
						
							
							
								
								LibJS: Force the lexer to parse a regex when expecting a statement  
							
							
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								05444103e3 
								
							 
						 
						
							
							
								
								LibJS: Treat arrow expression as function and stop parsing after  
							
							
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								e31b715808 
								
							 
						 
						
							
							
								
								LibJS: Make functions reset break and continue context  
							
							
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								be3b4a68d2 
								
							 
						 
						
							
							
								
								LibJS: Allow class methods named "get", "set" or "static"  
							
							
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								b16c02d6b4 
								
							 
						 
						
							
							
								
								LibJS: Allow labelled functions in certain contexts  
							
							... 
							
							
							
							Also disallow duplicated labels. 
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								4cc95ae39d 
								
							 
						 
						
							
							
								
								LibJS: Fix that a windows-style new line was not escaped properly  
							
							
							
						 
						
							2021-08-16 23:20:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								cbe7015c0c 
								
							 
						 
						
							
							
								
								LibJS: Add missing spec link to YearMonthFromFields  
							
							
							
						 
						
							2021-08-16 20:40:21 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								795e077eb8 
								
							 
						 
						
							
							
								
								LibJS: Implement Temporal.PlainDate.prototype.toPlainMonthDay()  
							
							
							
						 
						
							2021-08-16 20:40:21 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								31f65b8c50 
								
							 
						 
						
							
							
								
								LibJS: Implement Temporal.Calendar.prototype.monthDayFromFields()  
							
							
							
						 
						
							2021-08-16 20:40:21 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								c1ffc17134 
								
							 
						 
						
							
							
								
								LibJS: Implement Temporal.Calendar.prototype.fields()  
							
							
							
						 
						
							2021-08-16 20:02:02 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								6709c915aa 
								
							 
						 
						
							
							
								
								LibJS: Implement Temporal.PlainDate.prototype.toPlainYearMonth()  
							
							
							
						 
						
							2021-08-16 14:10:41 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								ed9d37bd40 
								
							 
						 
						
							
							
								
								LibJS: Implement Temporal.Calendar.prototype.yearMonthFromFields()  
							
							
							
						 
						
							2021-08-16 14:10:41 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								020bfc9d93 
								
							 
						 
						
							
							
								
								LibJS: Parse and partially execute import and export statements  
							
							... 
							
							
							
							We produce the import and export entries as per the spec. However we do
not yet verify that named things that are exported are declared
somewhere. 
							
						 
						
							2021-08-15 23:51:47 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									davidot 
								
							 
						 
						
							
							
							
							
								
							
							
								7613c22b06 
								
							 
						 
						
							
							
								
								LibJS: Add a mode to parse JS as a module  
							
							... 
							
							
							
							In a module strict mode should be enabled at the start of parsing and we
allow import and export statements. 
							
						 
						
							2021-08-15 23:51:47 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								fa8e9cb683 
								
							 
						 
						
							
							
								
								LibJS/Tests: Skip flaky FinalizationRegistry.prototype.cleanupSome test  
							
							
							
						 
						
							2021-08-15 16:44:01 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Timothy Flynn 
								
							 
						 
						
							
							
							
							
								
							
							
								f1ce998d73 
								
							 
						 
						
							
							
								
								LibRegex+LibJS: Combine named and unnamed capture groups in MatchState  
							
							... 
							
							
							
							Combining these into one list helps reduce the size of MatchState, and
as a result, reduces the amount of memory consumed during execution of
very large regex matches.
Doing this also allows us to remove a few regex byte code instructions:
ClearNamedCaptureGroup, SaveLeftNamedCaptureGroup, and NamedReference.
Named groups now behave the same as unnamed groups for these operations.
Note that SaveRightNamedCaptureGroup still exists to cache the matched
group name.
This also removes the recursion level from the MatchState, as it can
exist as a local variable in Matcher::execute instead. 
							
						 
						
							2021-08-15 11:43:45 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Stefanic 
								
							 
						 
						
							
							
							
							
								
							
							
								e26cfd313e 
								
							 
						 
						
							
							
								
								LibJS: Prevent stack overflow in flatten_into_array()  
							
							... 
							
							
							
							The check for stack space in VM from push_execution_context has been
moved to a method on VM called did_reach_stack_space_limit. This
allows us to check the stack size in other places besides
push_execution_context.
We can now verify that we have enough space on the stack before calling
flatten_into_array to ensure that we don't cause a stack overflow error
when calling the function with a large depth. 
							
						 
						
							2021-08-15 11:24:30 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								4520863c0e 
								
							 
						 
						
							
							
								
								LibJS/Tests: Add test for PlainMonthDay default reference year  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								8f7a9e1e5c 
								
							 
						 
						
							
							
								
								LibJS/Tests: Add test for PlainYearMonth default reference day  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								1549845389 
								
							 
						 
						
							
							
								
								LibJS: Implement Temporal.PlainMonthDay.prototype.getISOFields()  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								7fb05eb878 
								
							 
						 
						
							
							
								
								LibJS: Implement Temporal.PlainMonthDay.prototype.valueOf()  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								c2ed3ad66b 
								
							 
						 
						
							
							
								
								LibJS: Implement Temporal.PlainMonthDay.prototype.day  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								9551aa17d3 
								
							 
						 
						
							
							
								
								LibJS: Implement Temporal.PlainMonthDay.prototype.monthCode  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								1382be1707 
								
							 
						 
						
							
							
								
								LibJS: Implement Temporal.PlainMonthDay.prototype.calendar  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								37b5a0715e 
								
							 
						 
						
							
							
								
								LibJS: Implement Temporal.PlainMonthDay.prototype[@@toStringTag]  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								0cf526d0c4 
								
							 
						 
						
							
							
								
								LibJS: Handle PlainMonthDay in the Calendar.prototype getters  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								b76bae13fd 
								
							 
						 
						
							
							
								
								LibJS: Handle PlainMonthDay in ISO{Year,Month,MonthCode,Day}  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								ec00d4729a 
								
							 
						 
						
							
							
								
								LibJS: Handle PlainMonthDay in GetTemporalCalendarWithISODefault  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								1e54e37228 
								
							 
						 
						
							
							
								
								LibJS: Handle PlainMonthDay in ToTemporalCalendar  
							
							
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								be07e2e91b 
								
							 
						 
						
							
							
								
								LibJS: Start implementing Temporal.PlainMonthDay  
							
							... 
							
							
							
							This commit adds the PlainMonthDay object itself, its constructor and
prototype (currently empty), and the CreateTemporalMonthDay abstract
operations. 
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								301d622b46 
								
							 
						 
						
							
							
								
								LibJS/Tests: Tweak PlainYearMonth Infinity test values  
							
							... 
							
							
							
							Since we want to test that +/- Infinity fails as an argument, we should
provide valid arguments for everything else - 0 for month isn't :^) 
							
						 
						
							2021-08-15 10:36:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Idan Horowitz 
								
							 
						 
						
							
							
							
							
								
							
							
								04359995a7 
								
							 
						 
						
							
							
								
								LibJS: Exclude FinalizationRegistries with queued cleanup jobs from GC  
							
							... 
							
							
							
							This is done by just adding them to the list of GC roots, which
prevents the VM from trying to run cleanup job of garbage collected
registries. 
							
						 
						
							2021-08-14 22:32:31 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								286a7ecd92 
								
							 
						 
						
							
							
								
								LibJS: Call base class visit_edges() in various Temporal objects  
							
							... 
							
							
							
							When overriding visit_edges() in a JS::Object subclass, we must make
sure to call the base class visit_edges(), or the object's Shape (and
any properties) will not get marked. 
							
						 
						
							2021-08-14 20:12:22 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								f51f5e135a 
								
							 
						 
						
							
							
								
								LibJS/Tests: Remove outdated FIXME comment  
							
							
							
						 
						
							2021-08-13 23:59:22 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								95059b9549 
								
							 
						 
						
							
							
								
								LibJS/Tests: Enable Proxy handler apply() thisArg test that now passes  
							
							
							
						 
						
							2021-08-13 23:57:33 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								419c21c66f 
								
							 
						 
						
							
							
								
								LibJS/Tests: Test iteration order of Map.prototype.entries()  
							
							
							
						 
						
							2021-08-13 23:54:08 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								455b94af7f 
								
							 
						 
						
							
							
								
								LibJS/Tests: Test iteration order of Map.prototype.values()  
							
							
							
						 
						
							2021-08-13 23:54:02 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								ea44d9e194 
								
							 
						 
						
							
							
								
								LibJS/Tests: Test iteration order of Map.prototype.keys()  
							
							
							
						 
						
							2021-08-13 23:53:40 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								1e90a3a542 
								
							 
						 
						
							
							
								
								Kernel: Make sys$perf_register_string() generate the string ID's  
							
							... 
							
							
							
							Making userspace provide a global string ID was silly, and made the API
extremely difficult to use correctly in a global profiling context.
Instead, simply make the kernel do the string ID allocation for us.
This also allows us to convert the string storage to a Vector in the
kernel (and an array in the JSON profile data.) 
							
						 
						
							2021-08-12 00:03:39 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								56e84a63ca 
								
							 
						 
						
							
							
								
								LibJS: Emit a profile signpost when starting a garbage collection  
							
							
							
						 
						
							2021-08-12 00:03:39 +02:00