#ifndef DECL_H
#define DECL_H

#include <stdint.h>

typedef enum DeclSpec {
    DECL_SPEC_NONE = 0x0,
    DECL_SPEC_FLOAT = 0x1,
    DECL_SPEC_INT = 0x2,
    DECL_SPEC_SIGNED = 0x4,
    DECL_SPEC_UNSIGNED = 0x8,
    DECL_SPEC_VOID = 0x10,
} DeclSpec;

typedef uint16_t DeclSpecs;

#endif

#ifndef DECL_H
#define DECL_H

#include <stdlib.h>

typedef enum DeclSpec {
    DECL_SPEC_NONE = 0x0,
    DECL_SPEC_FLOAT = 0x1,
    DECL_SPEC_INT = 0x2,
    DECL_SPEC_SIGNED = 0x4,
    DECL_SPEC_UNSIGNED = 0x8,
    DECL_SPEC_VOID = 0x10,
} DeclSpec;

typedef size_t DeclSpecs;

#endif

--- 
+++ 
@@ -1,7 +1,7 @@
 #ifndef DECL_H
 #define DECL_H
 
-#include <stdlib.h>
+#include <stdint.h>
 
 typedef enum DeclSpec {
     DECL_SPEC_NONE = 0x0,
@@ -12,6 +12,6 @@
     DECL_SPEC_VOID = 0x10,
 } DeclSpec;
 
-typedef size_t DeclSpecs;
+typedef uint16_t DeclSpecs;
 
 #endif
Change type of DeclSpecs to uint16_t

Using size_t was a bit overkill.
