// SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
|
|
/*
|
* BTF-to-C dumper test for topological sorting of dependent structs.
|
*
|
* Copyright (c) 2019 Facebook
|
*/
|
/* ----- START-EXPECTED-OUTPUT ----- */
|
struct s1 {};
|
|
struct s3;
|
|
struct s4;
|
|
struct s2 {
|
struct s2 *s2;
|
struct s3 *s3;
|
struct s4 *s4;
|
};
|
|
struct s3 {
|
struct s1 s1;
|
struct s2 s2;
|
};
|
|
struct s4 {
|
struct s1 s1;
|
struct s3 s3;
|
};
|
|
struct list_head {
|
struct list_head *next;
|
struct list_head *prev;
|
};
|
|
struct hlist_node {
|
struct hlist_node *next;
|
struct hlist_node **pprev;
|
};
|
|
struct hlist_head {
|
struct hlist_node *first;
|
};
|
|
struct callback_head {
|
struct callback_head *next;
|
void (*func)(struct callback_head *);
|
};
|
|
struct root_struct {
|
struct s4 s4;
|
struct list_head l;
|
struct hlist_node n;
|
struct hlist_head h;
|
struct callback_head cb;
|
};
|
|
/*------ END-EXPECTED-OUTPUT ------ */
|
|
int f(struct root_struct *root)
|
{
|
return 0;
|
}
|