pike.git
/
src
/
multiset.c
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/multiset.c:1019:
case FIND_DESTRUCTED: midflight_remove_node_faster (new.msd, rbstack); new.msd->size--; break; case FIND_KEY_DESTRUCTED: new.msd->size--; goto node_done; default: DO_IF_DEBUG (Pike_fatal ("Invalid find_type.\n")); } }
-
/* NOT REACHED */
+
UNREACHABLE();
} node_done: if (l->msd != old) { /* l changed. Have to start over to guarantee no loss of data. */ CALL_AND_UNSET_ONERROR (uwp); old = l->msd; goto again; } } while ((new.list = next));
pike.git/src/multiset.c:1121:
rbstack, HDR (new.node)); goto node_added; case FIND_DESTRUCTED: midflight_remove_node_faster (new.msd, rbstack); break; case FIND_KEY_DESTRUCTED: goto node_skipped; default: DO_IF_DEBUG (Pike_fatal ("Invalid find_type.\n")); } }
-
/* NOT REACHED */
+
UNREACHABLE();
node_added: #ifdef PIKE_DEBUG SET_SVAL_TYPE(new.node->i.ind, TYPEOF(new.node->i.ind) | MULTISET_FLAG_MARKER); #endif new.msd->size++; } node_skipped:;
pike.git/src/multiset.c:1501:
low_use_multiset_index (RBNODE (node), tmp); assert (!IS_DESTRUCTED (&tmp)); /* TODO: Use special variant of set_svalue_cmpfun so we don't * have to copy the index svalues. */ INTERNAL_CMP (key, &tmp, cmp_res); assert (cmp_res != CMPFUN_UNORDERED); }, {find_type = FIND_LESS; goto done;}, {find_type = FIND_EQUAL; goto done;}, {find_type = FIND_GREATER; goto done;});
-
/* NOT REACHED */
+
UNREACHABLE();
} else { /* Find the biggest node less or order-wise equal to key. */ struct rb_node_hdr *found_node; int step_count; LOW_RB_TRACK_NEQ ( rbstack, node, {
pike.git/src/multiset.c:1674:
} /* TODO: Use special variant of set_svalue_cmpfun so we don't * have to copy the index svalues. */ INTERNAL_CMP (key, low_use_multiset_index (RBNODE (node), tmp), cmp_res); /* Note: CMPFUN_UNORDERED > 0 - treated as equal. */ cmp_res = cmp_res >= 0 ? 1 : -1; }, {find_type = FIND_LESS; goto done;}, {find_type = FIND_GREATER; goto done;});
-
/* NOT REACHED */
+
UNREACHABLE();
} else { LOW_RB_TRACK_NEQ ( rbstack, node, { push_svalue (key); low_push_multiset_index (RBNODE (node)); if (IS_DESTRUCTED (sp - 1)) { pop_2_elems(); UNSET_ONERROR (uwp); *track = rbstack; return FIND_DESTRUCTED; } EXTERNAL_CMP (&msd->cmp_less); cmp_res = UNSAFE_IS_ZERO (sp - 1) ? 1 : -1; pop_stack(); }, {find_type = FIND_LESS; goto done;}, {find_type = FIND_GREATER; goto done;});
-
/* NOT REACHED */
+
UNREACHABLE();
} done: UNSET_ONERROR (uwp); if (IS_DESTRUCTED (key)) { RBSTACK_FREE (rbstack); *track = rbstack; return FIND_KEY_DESTRUCTED; } *track = rbstack;
pike.git/src/multiset.c:3140:
goto node_added; case FIND_DESTRUCTED: midflight_remove_node_faster (new.msd, rbstack); break; case FIND_KEY_DESTRUCTED: RBSTACK_FREE (rbstack); goto node_skipped; default: DO_IF_DEBUG (Pike_fatal ("Invalid find_type.\n")); } }
-
/* NOT REACHED */
+
UNREACHABLE();
node_added: #ifdef PIKE_DEBUG SET_SVAL_TYPE(new.node->i.ind, TYPEOF(new.node->i.ind) | MULTISET_FLAG_MARKER); #endif new.msd->size++; } node_skipped:;