Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
proton-0.10
-
None
Description
Currently protocol.h.py reads the AMQP 1.0 spec xml files and generates all of its output into protocol.h – even the data structure definitions.
Those definitions are currently protected by #ifdef DEFINE_FIELDS , which is defined only in codec.c – so the definitions only show up in that file, while other .c files only see the declarations.
If DEFINE_FIELDS is #defined in any other file, compilation will fail with multiple definition errors.
The structure declarations should remain in the .h file , but the actual definitions should be moved into a generated .c file.