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