Changeset 36795edf in mainline for kernel/generic/include/adt/odict.h


Ignore:
Timestamp:
2021-03-12T19:16:51Z (4 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
a85d5c6
Parents:
17fac946
Message:

Improve lists and other data structures

Provide more standard-compliant member_to_inst implementation that uses
offsetof. Avoid potential undefined behavior in list_foreach and
list_foreach_rev by avoiding assinging an unaligned pointer value. Use
size_t instead of unsigned long for list length.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/include/adt/odict.h

    r17fac946 r36795edf  
    3737
    3838#include <errno.h>
     39#include <member.h>
    3940#include <stdbool.h>
    4041#include <stddef.h>
     
    4243
    4344#define odict_get_instance(odlink, type, member) \
    44         ((type *)( (void *)(odlink) - ((void *) &((type *) NULL)->member)))
     45        member_to_inst(odlink, type, member)
    4546
    4647extern void odict_initialize(odict_t *, odgetkey_t, odcmp_t);
Note: See TracChangeset for help on using the changeset viewer.