NO THEY CAN NOT.
Nobody (not even the compiler) knows what ALLOC, BUFFER and CORE are and what they do. We only guess at what ECHO does, the code is almost opaque to everybody. Don't bother explaining them. I don't care - learning about them won't make my world richer.
And no, you can't expected to pull whole random repos from random places to answer your question on a message board.
Currently you do not really code in C. You code in some weird, self constructed dialect of C that nobody else speaks and if I am being very kind has minimal intrinsic merit over the basic language itself.
You are like a friend who has decided to learn English through the teachings of Yoda in Star Wars. All the words are right, but the actual ideas are lost, confused and muddied.
It's like if I asked you "what's wrong with this C code? why doesn't it compile":
Code:
int foo(int a) DEF
WHILE(a > 0) DO
printf("%i\n",a);
DECREMENT(a);
LOOP
ENDDEF
And then go on to argue that it is perfectly valid C - it is my better style of C - it is just that you don't have this header file:
Code:
#define IF(x) if(x)
#define THEN {
#define ENDIF }
#define WHILE(x) while(x)
#define DO {
#define LOOP }
#define DEF {
#define ENDDEF }
#define DECREMENT(x) x--
If you are honest with yourself even said as much yourself:
You need to start writing idiomatic standard C, use the standard library, just use malloc() and free(), use assert(), and getopt(), just use the stdint.h types like uint8_t like the rest of us do. Don't keep putting everything in an needless wrappers and abstractions.
Move to the C all your future co-workers will use, to the C all the projects you will contribute to will use, to the C you will have to use if you want people to collaborate with you.
Sorry if this 'tough love' hurts, but it is my honest thoughts and feelings.