From d7c4630d3396394210a7960f6504d723674c5783 Mon Sep 17 00:00:00 2001 From: Alexander Medvednikov Date: Sat, 9 May 2020 18:34:04 +0200 Subject: [PATCH] checker: make pub field check an error --- vlib/os/inode.v | 2 ++ vlib/v/builder/builder.v | 3 ++- vlib/v/checker/checker.v | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/vlib/os/inode.v b/vlib/os/inode.v index b0ac3572a7..4c25eb13b7 100644 --- a/vlib/os/inode.v +++ b/vlib/os/inode.v @@ -14,12 +14,14 @@ enum FileType { } struct FilePermission { +pub: read bool write bool execute bool } struct FileMode { +pub: typ FileType owner FilePermission group FilePermission diff --git a/vlib/v/builder/builder.v b/vlib/v/builder/builder.v index ffd5dbb8e1..1a0ce32e97 100644 --- a/vlib/v/builder/builder.v +++ b/vlib/v/builder/builder.v @@ -27,11 +27,12 @@ pub: module_path string mut: pref &pref.Preferences - module_search_paths []string parsed_files []ast.File global_scope &ast.Scope out_name_c string out_name_js string +pub mut: + module_search_paths []string } pub fn new_builder(pref &pref.Preferences) Builder { diff --git a/vlib/v/checker/checker.v b/vlib/v/checker/checker.v index aec91a1fec..0b4c227e81 100644 --- a/vlib/v/checker/checker.v +++ b/vlib/v/checker/checker.v @@ -1011,7 +1011,7 @@ pub fn (mut c Checker) selector_expr(selector_expr mut ast.SelectorExpr) table.T } if field := c.table.struct_find_field(typ_sym, field_name) { if typ_sym.mod != c.mod && !field.is_pub{ - c.warn('field `${typ_sym.name}.$field_name` is not public', selector_expr.pos) + c.error('field `${typ_sym.name}.$field_name` is not public', selector_expr.pos) } return field.typ }