HaxeFoundation / HaxeFoundation/haxe
Compiler fails to optimize pointless variable assignments
- Dominant language
- Haxe
- Stars
- 6.9k
- Forks
- 715
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 11
Description
Obviously in this little minor example it's no big deal, but I have an issue with inlined constructors for transformation matrices that spews out hundreds of pointless dummy variable assignments over and over.
Haxe code:
```haxe
class Main {
static public function main() {
var test = new Banana();
test.potassium = 100;
printNutrition(test.potassium);
}
static public function printNutrition(_potassium:Float) {
trace(_potassium);
}
}
class Banana {
public var potassium:Float;
public inline function new() {
potassium = 50;
}
}
```
JS output:
```js
// Generated by Haxe 4.0.0-rc.1+1fdd3d59b
(function () { "use strict";
var Main = function() { };
Main.main = function() {
var test_potassium = 50;
test_potassium = 100;
Main.printNutrition(test_potassium);
};
Main.printNutrition = function(_potassium) {
console.log("Main.hx:8:",_potassium);
};
Main.main();
})();
```
build.hxml:
```hxml
-main Main
-dce full
-D analyzer
-D analyzer-optimize
-js output.js
```
Contributor guide
Assessment
This issue has not been assessed yet.