Skip to content
Snippets Groups Projects
Commit 207fc4cf authored by Nick Mathewson's avatar Nick Mathewson :game_die:
Browse files

Move SUBTYPE_P into compat_compiler.h

parent 77bc65bb
No related branches found
No related tags found
No related merge requests found
......@@ -43,18 +43,6 @@
#include "lib/encoding/cstring.h"
#include "lib/fs/winlib.h"
/** Macro: yield a pointer to an enclosing structure given a pointer to
* a substructure at offset <b>off</b>. Example:
* <pre>
* struct base { ... };
* struct subtype { int x; struct base b; } x;
* struct base *bp = &x.base;
* struct *sp = SUBTYPE_P(bp, struct subtype, b);
* </pre>
*/
#define SUBTYPE_P(p, subtype, basemember) \
((void*) ( ((char*)(p)) - offsetof(subtype, basemember) ))
/* Math functions */
/* String manipulation */
......
......@@ -253,6 +253,18 @@
*/
#define STRUCT_VAR_P(st, off) ((void*) ( ((char*)(st)) + (off) ) )
/** Macro: yield a pointer to an enclosing structure given a pointer to
* a substructure at offset <b>off</b>. Example:
* <pre>
* struct base { ... };
* struct subtype { int x; struct base b; } x;
* struct base *bp = &x.base;
* struct *sp = SUBTYPE_P(bp, struct subtype, b);
* </pre>
*/
#define SUBTYPE_P(p, subtype, basemember) \
((void*) ( ((char*)(p)) - offsetof(subtype, basemember) ))
/** Macro: Yields the number of elements in array x. */
#define ARRAY_LENGTH(x) ((sizeof(x)) / sizeof(x[0]))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment