Incorrect LSB for __Memoize on static functions
Abierto
hack
probably easy
- Lenguaje dominante
- C++
- Estrellas
- 18.7k
- Forks
- 3.1k
- Merge medio
- 1 h 47 min
- PR fusionados (30 d)
- 2
Descripción
``` Hack
>
protected static function doStuff() {
var_dump(static::class);
}
}
class B extends A {
public static function doOtherStuff() {
self::doStuff();
}
}
B::doOtherStuff();
```
Actual output: A
Expected output: B
From bytecode:
```
55: FPushClsMethodD 0 "doStuff$memoize_impl" "A"
```
This should be FPushClsMethodF.
The user still needs to be careful about the shared cache between the superclass and child class
Guía de contribución
Evaluación
Este issue todavía no se ha evaluado.