hhvm
hhvm copied to clipboard
A virtual machine for executing programs written in Hack.
I am creating a test triggering `hh_client --lint --json` against some temporary files. The content of the temporary source file is like ``` /* * Copyright (c) 2017-present, Facebook, Inc....
**Describe the bug** When given an invalid JSON string which is defective in one of the manners described below, `json_decode()` returns a result. This JSON is not strictly valid according...
We currently do a pretty nasty trick to emulate `execvpe` on MacOS: https://github.com/facebook/hhvm/blob/ceb300a5bf2411b07f7907bd1a613583901b78b7/hphp/util/process.cpp#L644-L657 There's two ways we could clean this up: - Set the Apple-specific `POSIX_SPAWN_SETEXEC` flag just to replace...
### HHVM Version 3.18.1 ### Standalone code, or other way to reproduce the problem ````
**Describe the bug** Given the expression `$expression_resolving_to_generic_type === $expression_resolving_to_a_known_type`, lint rule 5607 should not emit an error if the generic type has any overlap with the known type. **Standalone code,...
**Describe the bug** In hhvm 4.27, forgetting to use the `$$` variable on the RHS of a `|>` operator, would be a typechecker error. _Naming[2069] This expression does not contain...
Given this code ```hack class ATest {} class ATestChild extends ATest { public function doThing(): void {} } function foo(dict $arr) { if (HH\Lib\C\contains_key($arr, 'b') && $arr['b'] is ATestChild) {...
**Describe the bug** Type coverage is not correct in files with `Shapes::idx()` calls. **Standalone code, or other way to reproduce the problem** ```HACK function full_coverage(): void { idx(vec[], 0); idx(vec[],...
```HACK newtype A = int; =\HH\ReifiedGenerics\get_type_structure(); Dict ( [kind] => 1 [opaque] => true [alias] => "A" ) ```