diff options
| author | Ginger Bill <bill@gingerbill.org> | 2017-06-07 22:09:16 +0100 |
|---|---|---|
| committer | Ginger Bill <bill@gingerbill.org> | 2017-06-07 22:09:16 +0100 |
| commit | 574b82c0c7e266bcd1bc16ee709d32936625cf46 (patch) | |
| tree | 2490104e638424a41d86d37395aefc99a00e5451 /src/check_expr.c | |
| parent | f60c772c11154d16c12d30a7f19c2c2e07068642 (diff) | |
v0.3.0
Diffstat (limited to 'src/check_expr.c')
| -rw-r--r-- | src/check_expr.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/check_expr.c b/src/check_expr.c index 75d38f4fc..1ed7378e5 100644 --- a/src/check_expr.c +++ b/src/check_expr.c @@ -2643,6 +2643,14 @@ bool check_is_castable_to(Checker *c, Operand *operand, Type *y) { return true; } + if (is_type_bit_field_value(src) && is_type_integer(dst)) { + return true; + } + + if (is_type_bit_field_value(src) && is_type_boolean(dst)) { + return src->BitFieldValue.bits == 1; + } + // Cast between pointers if (is_type_pointer(src) && is_type_pointer(dst)) { Type *s = base_type(type_deref(src)); |