Skip to content

Commit

Permalink
treat fields with initializers as optional when checking object liter…
Browse files Browse the repository at this point in the history
…als and structInit (fix tests)
  • Loading branch information
m0rkeulv committed Aug 11, 2024
1 parent 63be099 commit 859bb36
Showing 1 changed file with 3 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ package;
@:structInit class MyStruct {
//NOTE: should not show warning about final when in structInit class
final name:String;
var age:Int = 30;
var age:Int;
var height:Float = 3.0; // init = same as optional
@:optional var address:String;

}
Expand All @@ -11,7 +12,7 @@ class Test {
public function new() {
// correct
var s1:MyStruct = {name:"name", age:30};
var s2:MyStruct = {name:"name", age:30, address:"address 1"};
var s2:MyStruct = {name:"name", age:30, height:1.0, address:"address 1"};

// wrong (TODO better error messages)
var <error descr="Incompatible type: {...} should be MyStruct">s3:MyStruct = {name:"name"}</error>; // missing field
Expand Down

0 comments on commit 859bb36

Please sign in to comment.