From b8d37e0d537e39511a1f36939ea8ef05b411abb8 Mon Sep 17 00:00:00 2001 From: joe-conigliaro Date: Thu, 8 Aug 2019 17:59:00 +1000 Subject: [PATCH] properly add submodule to type --- compiler/parser.v | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/compiler/parser.v b/compiler/parser.v index c43ea31b00..402817bb3b 100644 --- a/compiler/parser.v +++ b/compiler/parser.v @@ -931,6 +931,15 @@ fn (p mut Parser) get_type() string { // "typ" not found? try "mod__typ" if t.name == '' && !p.builtin_mod { // && !p.first_pass() { + // we are a module + if typ.contains('__') { + // so try resolve full submodule + mod := p.import_table.resolve_alias(p.lit).replace('.', '_dot_') + if mod != '' { + typ = prepend_mod(mod, typ) + } + } + t = p.table.find_type(typ) if !typ.contains('array_') && p.mod != 'main' && !typ.contains('__') && !typ.starts_with('[') { typ = p.prepend_mod(typ)