Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

how to deal with recursive type?

Help
skyhover
2005-02-14
2013-05-08
  • skyhover
    skyhover
    2005-02-14

    I met some problem related to recursive type when analyzing linux kernel using banshee with field-sensitivity support. For example, in `include/linux/list.h', there is some code similar to the following:
    struct list_head { struct list_head *next, *prev; };
    void __list_add(struct list_head *new, struct list_head *prev,  struct list_head *next);
    void list_add(struct list_head *new, struct list_head *head)
    { __list_add(new, head, head->next); }

    How does banshee deal with the matching between `head->next' and its corresponding parameter `next'?

    Thanks

    Skyhover