P99
#define P99_LIFO_TABULATE (   TYPE,
  TAB,
 
)
Value:
size_t P99_FILEID(TAB, _cnt) = 0;                              \
TYPE * P99_FILEID(TAB, _head) = P99_LIFO_CLEAR(L);             \
for (TYPE * p00_e = P99_FILEID(TAB, _head);                    \
     p00_e;                                                    \
     p00_e = p00_e->p99_lifo)                                  \
  ++P99_FILEID(TAB, _cnt);                                     \
TYPE * TAB[P99_FILEID(TAB, _cnt)];                             \
for (TYPE ** p00_t = &(TAB[0]),                                \
       * p00_e = P99_FILEID(TAB, _head);                       \
     p00_e;                                                    \
     p00_e = p00_e->p99_lifo,                                  \
       ++p00_t)                                                \
  *p00_t = p00_e
Remarks:
argument 0 should correspond to a type that is not a VLA.
argument 1 must be an identifier
argument 2 maybe evaluated several times for its type but only once for its value

Definition at line 199 of file p99_lifo.h.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines