1divert(-1) 2 3define(`M4_FATAL', `divert(0)errprint(`FATAL: $1 4')m4exit(1)') 5 6define(`M4_MACRO', `esyscmd(./desc.sh $@) 'dnl 7`ifelse(sysval, 0, , `M4_FATAL(`Invalid args for $1:' shift($*))')') 8 9define(`M4_XARGS', `$1 ifelse(eval($# < 2), 1, , `M4_XARGS(shift($@))')') 10 11define(`M4_INDEX_DEFAULT', ``none'') 12define(`M4_SIZE_DYNAMIC', ``dynamic'') 13 14define(`M4_RANGE', `M4_MACRO(M4_XARGS(``$0'' $@))') 15define(`M4_SIZE', `M4_MACRO(M4_XARGS(``$0'' $@))') 16define(`M4_DIGIT', `M4_MACRO(M4_XARGS(``$0'' $@))') 17define(`M4_DYNAMIC', ``$@'') 18define(`M4_HIDE', ``$@'') 19define(`M4_STRUCT_DESC', `M4_MACRO(M4_XARGS(``$0'' $@))') 20define(`M4_NUMBER_DESC', `M4_MACRO(M4_XARGS(``$0'' $@))') 21define(`M4_STRING_DESC', `M4_MACRO(M4_XARGS(``$0'' $@))') 22define(`M4_ENUM_DESC', `M4_MACRO(M4_XARGS(``$0'' $@))') 23define(`M4_ARRAY_DESC', `M4_MACRO(M4_XARGS(``$0'' $@))') 24define(`M4_ARRAY_MARK_DESC', `M4_MACRO(M4_XARGS(``$0'' $@))') 25define(`M4_STRING_MARK_DESC', `M4_MACRO(M4_XARGS(``$0'' $@))') 26define(`M4_NUMBER_MARK_DESC', `M4_MACRO(M4_XARGS(``$0'' $@))') 27define(`M4_BOOL_DESC', `M4_MACRO(M4_XARGS(``$0'' $@))') 28define(`M4_STRUCT_LIST_DESC', `M4_MACRO(M4_XARGS(``$0'' $@))') 29define(`M4_ARRAY_TABLE_DESC', `M4_MACRO(M4_XARGS(``$0'' $@))') 30 31divert(0)dnl 32