diff options
| author | gingerBill <bill@gingerbill.org> | 2025-02-05 10:27:17 +0000 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2025-02-05 10:27:17 +0000 |
| commit | f80bea5b1142c6b317f8f52bb9b3814afe5d3c1b (patch) | |
| tree | 5682dc3cb23ac1a528deef0c8265866006411992 /src/check_expr.cpp | |
| parent | ab469e657dcd975bbce3b7b211326363ce17ac92 (diff) | |
Remove transmute suggestion with `-vet-cast` when transmuting native <-> endian-specific types
Diffstat (limited to 'src/check_expr.cpp')
| -rw-r--r-- | src/check_expr.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/check_expr.cpp b/src/check_expr.cpp index 83b6181c0..550a7749c 100644 --- a/src/check_expr.cpp +++ b/src/check_expr.cpp @@ -3649,7 +3649,8 @@ gb_internal bool check_transmute(CheckerContext *c, Ast *node, Operand *o, Type gb_string_free(oper_str); gb_string_free(to_type); } else if (is_type_integer(src_t) && is_type_integer(dst_t) && - types_have_same_internal_endian(src_t, dst_t)) { + types_have_same_internal_endian(src_t, dst_t) && + type_endian_kind_of(src_t) == type_endian_kind_of(dst_t)) { gbString oper_type = type_to_string(src_t); gbString to_type = type_to_string(dst_t); error(o->expr, "Use of 'transmute' where 'cast' would be preferred since both are integers of the same endianness, from '%s' to '%s'", oper_type, to_type); |