Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

libc's compatibility



Hello all,

Five months ago, the following changes were committed to
src/sys/sys/rb.h:

> % cvs diff -r1.13 -r1.14 rb.h
> <snip>
> ***************
> ! typedef signed int (*const rbto_compare_nodes_fn)(const struct rb_node *,
> !     const struct rb_node *);
> ! typedef signed int (*const rbto_compare_key_fn)(const struct rb_node *,
> !     const void *);
> ---------------
> ! typedef signed int (*const rbto_compare_nodes_fn)(void *,
> !     const void *, const void *);
> ! typedef signed int (*const rbto_compare_key_fn)(void *,
> !     const void *, const void *);
> ***************
> <snip>
> ***************
> -struct rb_tree_ops {
> +typedef struct {
>         rbto_compare_nodes_fn rbto_compare_nodes;
>         rbto_compare_key_fn rbto_compare_key;
> +       size_t rbto_node_offset;
> +       void *rbto_context;
> -};
> +} rb_tree_ops_t;
> ***************
> <snip>
> ***************
> -void   rb_tree_init(struct rb_tree *, const struct rb_tree_ops *);
> +void   rb_tree_init(rb_tree_t *, const rb_tree_ops_t *);
> ***************
> <snip>

I think they break libc's compatibility.

> % cd /tmp
> % env 
> LD_PRELOAD=/tmp/201008100000Z/libc.so.12.173:/tmp/201009270000Z/libprop.so.1.1
>   /tmp/201008100000Z/ifconfig -a
> assertion "rpdk == pdk" failed: file 
> "/home/builds/ab/HEAD/src/common/lib/libprop/prop_dictionary.c", line 339, 
> function "_prop_dict_keysym_alloc"
> Abort trap (core dumped)

Any comments?

-- 
nakayosh


Home | Main Index | Thread Index | Old Index