From 0090c2d70b89cc6b5ab02bdc02aa49c4caf71a5a Mon Sep 17 00:00:00 2001 From: Ben Noordhuis Date: Wed, 7 Feb 2018 20:38:49 +0100 Subject: DRY 'is slice?' conditionals in parser (#750) --- src/analyze.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'src/analyze.cpp') diff --git a/src/analyze.cpp b/src/analyze.cpp index 2812c9d79e..4c982c160c 100644 --- a/src/analyze.cpp +++ b/src/analyze.cpp @@ -3380,11 +3380,7 @@ bool types_match_const_cast_only(TypeTableEntry *expected_type, TypeTableEntry * } // slice const - if (expected_type->id == TypeTableEntryIdStruct && - actual_type->id == TypeTableEntryIdStruct && - expected_type->data.structure.is_slice && - actual_type->data.structure.is_slice) - { + if (is_slice(expected_type) && is_slice(actual_type)) { TypeTableEntry *actual_ptr_type = actual_type->data.structure.fields[slice_ptr_index].type_entry; TypeTableEntry *expected_ptr_type = expected_type->data.structure.fields[slice_ptr_index].type_entry; if ((!actual_ptr_type->data.pointer.is_const || expected_ptr_type->data.pointer.is_const) && -- cgit v1.2.3