checker: allow pointer index for translated code (#14231)

master
playX 2022-04-30 14:30:55 +00:00 committed by GitHub
parent 9f8a34a528
commit 0b54196962
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 2 additions and 1 deletions

View File

@ -3809,7 +3809,8 @@ fn (mut c Checker) check_index(typ_sym &ast.TypeSymbol, index ast.Expr, index_ty
if typ_sym.kind in [.array, .array_fixed, .string] { if typ_sym.kind in [.array, .array_fixed, .string] {
if !(index_type.is_int() || index_type_sym.kind == .enum_ if !(index_type.is_int() || index_type_sym.kind == .enum_
|| (index_type_sym.kind == .alias || (index_type_sym.kind == .alias
&& (index_type_sym.info as ast.Alias).parent_type.is_int())) { && (index_type_sym.info as ast.Alias).parent_type.is_int())
|| (c.pref.translated && index_type.is_any_kind_of_pointer())) {
type_str := if typ_sym.kind == .string { type_str := if typ_sym.kind == .string {
'non-integer string index `$index_type_sym.name`' 'non-integer string index `$index_type_sym.name`'
} else { } else {