From 151f86c1e9e518c34a76ff5fdab9afd34000fe0d Mon Sep 17 00:00:00 2001 From: "kr.angelov" Date: Mon, 28 Oct 2013 12:35:37 +0000 Subject: fix the handling of 'pre' in the C runtime --- src/runtime/c/gu/seq.h | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'src/runtime/c/gu/seq.h') diff --git a/src/runtime/c/gu/seq.h b/src/runtime/c/gu/seq.h index cb18a90b5..2b0020bab 100644 --- a/src/runtime/c/gu/seq.h +++ b/src/runtime/c/gu/seq.h @@ -114,11 +114,18 @@ gu_seq_resize_tail(GuSeq seq, ptrdiff_t change); void gu_buf_sort(GuBuf *buf, GuOrder *order); -#define gu_seq_binsearch(S, O, T, N, V) \ - ((T*) gu_seq_binsearch_(S, O, sizeof(T), offsetof(T,N), V)) +#define gu_seq_binsearch(S, O, T, V) \ + ((T*) gu_seq_binsearch_(S, O, sizeof(T), V)) void* -gu_seq_binsearch_(GuSeq *seq, GuOrder *order, size_t elem_size, size_t field_offset, void *key); +gu_seq_binsearch_(GuSeq *seq, GuOrder *order, size_t elem_size, void *key); + +#define gu_seq_binsearch_index(S, O, T, V, PI) \ + gu_seq_binsearch_index_(S, O, sizeof(T), V, PI) + +bool +gu_seq_binsearch_index_(GuSeq *seq, GuOrder *order, size_t elem_size, + void *key, size_t *pindex); // Using a buffer as a heap void -- cgit v1.2.3