1*2159047fSniklas 2*2159047fSniklas: SYNOPSIS 3*2159047fSniklas skip_past_newline 4*2159047fSniklas get_stuff_in_command 5*2159047fSniklas paramstuff 6*2159047fSniklas indent 7*2159047fSniklas maybecatstr 8*2159047fSniklas; 9*2159047fSniklas 10*2159047fSniklas: ignore 11*2159047fSniklas skip_past_newline 12*2159047fSniklas get_stuff_in_command 13*2159047fSniklas outputdots 14*2159047fSniklas maybecatstr 15*2159047fSniklas ; 16*2159047fSniklas 17*2159047fSniklas: CODE_FRAGMENT 18*2159047fSniklas ignore ; 19*2159047fSniklas 20*2159047fSniklas: external 21*2159047fSniklas 0 internalmode ignore ; 22*2159047fSniklas 23*2159047fSniklas: internal 24*2159047fSniklas 1 internalmode ignore ; 25*2159047fSniklas 26*2159047fSniklas- input stack { a b } output b if internal, a if external 27*2159047fSniklas: ifinternal 28*2159047fSniklas "" swap 1 internalmode maybecatstr 29*2159047fSniklas swap 30*2159047fSniklas "" swap 0 internalmode maybecatstr 31*2159047fSniklas catstr 32*2159047fSniklas ; 33*2159047fSniklas 34*2159047fSniklas- Put note in output string, regardless of internal mode. 35*2159047fSniklas: COMMENT 36*2159047fSniklas skip_past_newline 37*2159047fSniklas get_stuff_in_command 38*2159047fSniklas translatecomments 39*2159047fSniklas catstr 40*2159047fSniklas ; 41*2159047fSniklas 42*2159047fSniklas- SENUM enum-type-name 43*2159047fSniklas- ENUM enum-name 44*2159047fSniklas- ENUMX addl-enum-name 45*2159047fSniklas- ENUMDOC doc for preceding enums 46*2159047fSniklas- ENDSENUM max-enum-name 47*2159047fSniklas 48*2159047fSniklas: make_enum_header 49*2159047fSniklas dup 50*2159047fSniklas "enum " swap catstr 51*2159047fSniklas " {\n" catstr 52*2159047fSniklas swap " _dummy_first_" swap catstr catstr 53*2159047fSniklas ",\n" catstr 54*2159047fSniklas ; 55*2159047fSniklas: make_string_table_header 56*2159047fSniklas dup 57*2159047fSniklas "#ifdef _BFD_MAKE_TABLE_" swap catstr swap 58*2159047fSniklas "\n\nstatic const char *const " swap catstr catstr 59*2159047fSniklas "_names[] = { \"@@uninitialized@@\",\n" catstr 60*2159047fSniklas ; 61*2159047fSniklas: SENUM 62*2159047fSniklas skip_past_newline 63*2159047fSniklas copy_past_newline 64*2159047fSniklas remchar 65*2159047fSniklas dup 66*2159047fSniklas make_enum_header 67*2159047fSniklas swap 68*2159047fSniklas make_string_table_header 69*2159047fSniklas ifinternal 70*2159047fSniklas catstr 71*2159047fSniklas get_stuff_in_command catstr 72*2159047fSniklas translatecomments ; 73*2159047fSniklas: ENDSENUM 74*2159047fSniklas skip_past_newline 75*2159047fSniklas copy_past_newline strip_trailing_newlines 76*2159047fSniklas dup 77*2159047fSniklas " " swap catstr " };\n" catstr swap 78*2159047fSniklas " \"@@overflow: " swap catstr "@@\",\n};\n#endif\n\n" catstr 79*2159047fSniklas ifinternal 80*2159047fSniklas catstr 81*2159047fSniklas ; 82*2159047fSniklas: make_enumerator 83*2159047fSniklas " " swap catstr 84*2159047fSniklas ",\n" catstr 85*2159047fSniklas ; 86*2159047fSniklas: make_enumerator_string 87*2159047fSniklas " \"" swap catstr 88*2159047fSniklas "\",\n" catstr 89*2159047fSniklas ; 90*2159047fSniklas: ENUM 91*2159047fSniklas skip_past_newline 92*2159047fSniklas copy_past_newline 93*2159047fSniklas remchar 94*2159047fSniklas dup 95*2159047fSniklas make_enumerator 96*2159047fSniklas swap 97*2159047fSniklas make_enumerator_string 98*2159047fSniklas ifinternal 99*2159047fSniklas ; 100*2159047fSniklas: ENUMX ENUM catstr ; 101*2159047fSniklas: ENUMEQ 102*2159047fSniklas skip_past_newline 103*2159047fSniklas "#define " 104*2159047fSniklas copy_past_newline remchar 105*2159047fSniklas catstr 106*2159047fSniklas " " 107*2159047fSniklas catstr 108*2159047fSniklas copy_past_newline 109*2159047fSniklas catstr 110*2159047fSniklas "" swap 0 internalmode maybecatstr 111*2159047fSniklas ; 112*2159047fSniklas: ENUMEQX ENUMEQ catstr ; 113*2159047fSniklas: ENUMDOC 114*2159047fSniklas skip_past_newline 115*2159047fSniklas get_stuff_in_command 116*2159047fSniklas strip_trailing_newlines 117*2159047fSniklas "\n{* " swap catstr " *}\n" catstr 118*2159047fSniklas translatecomments 119*2159047fSniklas - discard it if we're doing internal mode 120*2159047fSniklas "" swap 0 internalmode maybecatstr 121*2159047fSniklas swap 122*2159047fSniklas catstr catstr 123*2159047fSniklas ; 124*2159047fSniklas: ENDDD external ; 125*2159047fSniklas: SECTION ignore ; 126*2159047fSniklas: SUBSECTION ignore ; 127*2159047fSniklas: SUBSUBSECTION ignore ; 128*2159047fSniklas: INTERNAL_DEFINITION internal ; 129*2159047fSniklas: DESCRIPTION ignore ; 130*2159047fSniklas: FUNCTION external ; 131*2159047fSniklas: RETURNS ignore ; 132*2159047fSniklas: TYPEDEF external ; 133*2159047fSniklas: INTERNAL_FUNCTION internal ; 134*2159047fSniklas: INTERNAL internal ; 135*2159047fSniklas: INODE ignore ; 136