31 lines
439 B
C
31 lines
439 B
C
#include <stdio.h>
|
|
#include <stddef.h>
|
|
|
|
#define container_of(ptr, type, member) ({ \
|
|
const typeof(((type*)0)->member)* __mptr = (ptr); \
|
|
(type*)((char*)__mptr - offsetof(type, member)); })
|
|
|
|
struct A;
|
|
struct B;
|
|
|
|
struct A {
|
|
char m0;
|
|
int m1;
|
|
struct B* m2;
|
|
};
|
|
|
|
struct B {
|
|
int m0;
|
|
char m1;
|
|
short m2;
|
|
struct A* m3;
|
|
float m4;
|
|
struct A m5;
|
|
struct B* m6;
|
|
} __attribute__((slr));
|
|
|
|
int main(int argc, char** argv) {
|
|
// TODO
|
|
return 0;
|
|
}
|