diff --git a/vlib/v/checker/checker.v b/vlib/v/checker/checker.v index 2ea6877cb9..22b396f371 100644 --- a/vlib/v/checker/checker.v +++ b/vlib/v/checker/checker.v @@ -1161,7 +1161,8 @@ pub fn (mut c Checker) struct_init(mut node ast.StructInit) ast.Type { // Do not allow empty uninitialized interfaces sym := c.table.get_type_symbol(field.typ) if sym.kind == .interface_ { - c.error('interface field `${type_sym.name}.$field.name` must be initialized', + // TODO error + c.warn('interface field `${type_sym.name}.$field.name` must be initialized', node.pos) } // Do not allow empty uninitialized sum types diff --git a/vlib/v/checker/tests/interface_init_err.out b/vlib/v/checker/tests/interface_init_err.out index 238395c279..f9a63fac4d 100644 --- a/vlib/v/checker/tests/interface_init_err.out +++ b/vlib/v/checker/tests/interface_init_err.out @@ -1,5 +1,5 @@ -vlib/v/checker/tests/interface_init_err.vv:15:7: error: interface field `Server.handler` must be initialized - 13 | +vlib/v/checker/tests/interface_init_err.vv:15:7: warning: interface field `Server.handler` must be initialized + 13 | 14 | fn main() { 15 | _ := Server{} | ~~~~~~~~