1 :Info: cv_binary_: 2021-10-28  cv_binary_
  2 
  3 Function: accepts an ASCII representation of a binary integer, or an
  4 integer with an optional trailing radix indicator.  It returns the
  5 fixed binary(35) representation of that number.  This entry point
  6 returns a zero value if the convert operation fails.
  7 
  8 See also cv_binary_check_ for a routine that returns a code if
  9 the convert operation fails.
 10 
 11 
 12 Syntax:
 13 declare cv_binary_ entry (char(*)) returns (fixed bin(35));
 14 result = cv_binary_ (string);
 15 
 16 
 17 Arguments:
 18 result
 19    is the converted fixed bin(35) value.  (Output)
 20 string
 21    is the string to be converted.  The number may be positive or
 22    negative, and may have a trailing radix indicator as its last
 23    character(s).  Space and/or horizontal tab characters around number
 24    or between sign and the number are ignored.  (Input)
 25 
 26 
 27 List of radix indicators:
 28    Indicator characters may also be given in uppercase.
 29 b, _b
 30    the number is interpreted as a base two number (binary).
 31    See "Notes" below.
 32 q, _q
 33    the number is interpreted as a base four number (quaternary).
 34 o, _o
 35    the number is interpreted as a base eight number (octal).
 36 d, _d
 37    the number is interpreted as a base ten number (decimal).
 38    See "Notes" below.
 39 x, _x
 40    the number is interpreted as a base sixteen number (hexadecimal).
 41 
 42 
 43 rN, _rN
 44    the number is interpreted in the base N which is a decimal number
 45    between 2 and 16 inclusive.
 46 
 47 
 48 Notes on input integers:
 49 A radix indicator may be appended to any input integer to specify its
 50 numeric base.  Decimal is assumed if no radix indicator is given.
 51 
 52    INDICATOR   NUMERIC BASE              EXAMPLES
 53     b or _b      base  2 or binary         1101b
 54     q or _q      base  4 or quaternary     113q  (=23d)
 55     o or _o      base  8 or octal          21o
 56     d or _d      base 10 or decimal        17d or 17
 57     x or _x      base 16 or hexadecimal    11x
 58    rN or _rN     where N is base value
 59                   between 2 and 16         44r5  (=24d)
 60 
 61 A negative value may be given using a leading minus (-) character:
 62    -23
 63 
 64 
 65 For octal input, a negative value may also be given using a 12-digit
 66 octal format in which the left-most digit is 5, 6, or 7:
 67    -1o is same as 777777777777o
 68 
 69 Digits for bases 11 through 16 may be entered using letters for digit
 70 values beyond 9:
 71    0 1 2 3 4 5 6 7 8 9 A B C D E F
 72 with letters accepted in either uppercase or lowercase.
 73 
 74 For hexadecimal input, a negative value may also be given using a
 75 9-digit hex format in which the left-most digit is: 8, 9, A, B, C, D,
 76 E, or F:
 77    -2x is same as FFFFFFFFEx
 78 
 79 
 80 Notes: If string is not a proper character representation of an
 81 integer, result will contain the converted value of the string up to
 82 but not including the incorrect character within the string.  If the
 83 radix indicator or the default base is not valid, result will contain
 84 0.
 85 
 86 
 87 :Info: cv_binary_check_: 2021-10-28  cv_binary_check_
 88 
 89 Function: accepts an ASCII representation of a binary integer, or an
 90 integer with an optional trailing radix indicator.  It returns the
 91 fixed binary(35) representation of that number.  This entry point
 92 returns a code if the convert operation fails.
 93 
 94 See also cv_binary_ for a routine that returns 0 if the convert
 95 operation fails.
 96 
 97 
 98 Syntax:
 99 declare cv_binary_check_ entry (char(*), fixed bin(35))
100    returns (fixed bin(35));
101 result = cv_binary_check_ (string, code);
102 
103 
104 Arguments:
105 result
106    is the converted fixed bin(35) value.  (Output)
107 string
108    is the string to be converted.  The number may be positive or
109    negative, and may have a trailing radix indicator as its last
110    character(s).  Space and/or horizontal tab characters around number
111    or between sign and the number are ignored.  (Input)
112 code
113    is a code that equals 0 if no error has occurred; otherwise, it is
114    the index of the character of the input string that terminated the
115    failed convert operation.  See "Notes" below.  (Output)
116 
117 
118 List of radix indicators:
119    Indicator characters may also be given in uppercase.
120 b, _b
121    the number is interpreted as a base two number (binary).
122    See "Notes" below.
123 q, _q
124    the number is interpreted as a base four number (quaternary).
125 o, _o
126    the number is interpreted as a base eight number (octal).
127 d, _d
128    the number is interpreted as a base ten number (decimal).
129    See "Notes" below.
130 x, _x
131    the number is interpreted as a base sixteen number (hexadecimal).
132 
133 
134 rN, _rN
135    the number is interpreted in the base N which is a decimal number
136    between 2 and 16 inclusive.
137 
138 
139 Notes on input integers:
140 A radix indicator may be appended to any input integer to specify its
141 numeric base.  Decimal is assumed if no radix indicator is given.
142 
143    INDICATOR   NUMERIC BASE              EXAMPLES
144     b or _b      base  2 or binary         1101b
145     q or _q      base  4 or quaternary     113q  (=23d)
146     o or _o      base  8 or octal          21o
147     d or _d      base 10 or decimal        17d or 17
148     x or _x      base 16 or hexadecimal    11x
149    rN or _rN     where N is base value
150                   between 2 and 16         44r5  (=24d)
151 
152 A negative value may be given using a leading minus (-) character:
153    -23
154 
155 
156 For octal input, a negative value may also be given using a 12-digit
157 octal format in which the left-most digit is 5, 6, or 7:
158    -1o is same as 777777777777o
159 
160 Digits for bases 11 through 16 may be entered using letters for digit
161 values beyond 9:
162    0 1 2 3 4 5 6 7 8 9 A B C D E F
163 with letters accepted in either uppercase or lowercase.
164 
165 For hexadecimal input, a negative value may also be given using a
166 9-digit hex format in which the left-most digit is: 8, 9, A, B, C, D,
167 E, or F:
168    -2x is same as FFFFFFFFEx
169 
170 
171 Notes: If string is not a proper character representation of an
172 integer, result will contain the converted value of the string, up to
173 but not including the incorrect character within the string.  If the
174 radix indicator is not valid, result will contain 0.  Code is not a
175 standard status code.  It therefore cannot be passed to com_err_ and
176 other subroutines that accept only standard status codes.
177 
178 
179 :Info: cv_dec_: 2021-10-28  cv_dec_
180 
181 Function: accepts an ASCII representation of a decimal integer, or an
182 integer with an optional trailing radix indicator.  It returns the
183 fixed binary(35) representation of that number.  This entry point
184 returns 0 if the convert operation fails.
185 
186 See also cv_dec_check_ for a routine that returns a code if the
187 convert operation fails.
188 
189 
190 Syntax:
191 declare cv_dec_ entry (char(*)) returns (fixed bin(35));
192 result = cv_dec_ (string);
193 
194 
195 Arguments:
196 result
197    is the converted fixed bin(35) value.  (Output)
198 string
199    is the string to be converted.  The number may be positive or
200    negative, and may have a trailing radix indicator as its last
201    character(s).  Space and/or horizontal tab characters around number
202    or between sign and the number are ignored.  (Input)
203 
204 
205 List of radix indicators:
206    Indicator characters may also be given in uppercase.
207 b, _b
208    the number is interpreted as a base two number (binary).
209    See "Notes" below.
210 q, _q
211    the number is interpreted as a base four number (quaternary).
212 o, _o
213    the number is interpreted as a base eight number (octal).
214 d, _d
215    the number is interpreted as a base ten number (decimal).
216    See "Notes" below.
217 x, _x
218    the number is interpreted as a base sixteen number (hexadecimal).
219 
220 
221 rN, _rN
222    the number is interpreted in the base N which is a decimal number
223    between 2 and 16 inclusive.
224 
225 
226 Notes on input integers:
227 A radix indicator may be appended to any input integer to specify its
228 numeric base.  Decimal is assumed if no radix indicator is given.
229 
230    INDICATOR   NUMERIC BASE              EXAMPLES
231     b or _b      base  2 or binary         1101b
232     q or _q      base  4 or quaternary     113q  (=23d)
233     o or _o      base  8 or octal          21o
234     d or _d      base 10 or decimal        17d or 17
235     x or _x      base 16 or hexadecimal    11x
236    rN or _rN     where N is base value
237                   between 2 and 16         44r5  (=24d)
238 
239 A negative value may be given using a leading minus (-) character:
240    -23
241 
242 
243 For octal input, a negative value may also be given using a 12-digit
244 octal format in which the left-most digit is 5, 6, or 7:
245    -1o is same as 777777777777o
246 
247 Digits for bases 11 through 16 may be entered using letters for digit
248 values beyond 9:
249    0 1 2 3 4 5 6 7 8 9 A B C D E F
250 with letters accepted in either uppercase or lowercase.
251 
252 For hexadecimal input, a negative value may also be given using a
253 9-digit hex format in which the left-most digit is: 8, 9, A, B, C, D,
254 E, or F:
255    -2x is same as FFFFFFFFEx
256 
257 
258 Notes: If string is not a proper character representation of an
259 integer, result will contain the converted value of the string, up to
260 but not including the incorrect character within the string.  If the
261 radix indicator or the default base is not valid, result will contain
262 0.
263 
264 Conversion of an integer without radix indicator can be performed more
265 efficiently in PL/I by--
266 
267       result = convert (result, string);
268 
269 
270 :Info: cv_dec_check_: 2021-10-28  cv_dec_check_
271 
272 Function: accepts an ASCII representation of a decimal integer, or an
273 integer with an optional trailing radix indicator.  It returns the
274 fixed binary(35) representation of that number.  This entry point
275 returns a code if the convert operation fails.
276 
277 See also cv_dec_ for a routine that returns 0 if the convert operation
278 fails.
279 
280 
281 Syntax:
282 declare cv_dec_check_ entry (char(*), fixed bin(35))
283    returns (fixed bin(35));
284 result = cv_dec_check_ (string, code);
285 
286 
287 Arguments:
288 result
289    is the converted fixed bin(35) value.  (Output)
290 string
291    is the string to be converted.  The number may be positive or
292    negative, and may have a trailing radix indicator as its last
293    character(s).  Space and/or horizontal tab characters around number
294    or between sign and the number are ignored.  (Input)
295 code
296    is a code that equals 0 if no error has occurred; otherwise, it is
297    the index of the character of the input string that terminated the
298    failed convert operation.  See "Notes" below.  (Output)
299 
300 
301 List of radix indicators:
302    Indicator characters may also be given in uppercase.
303 b, _b
304    the number is interpreted as a base two number (binary).
305    See "Notes" below.
306 q, _q
307    the number is interpreted as a base four number (quaternary).
308 o, _o
309    the number is interpreted as a base eight number (octal).
310 d, _d
311    the number is interpreted as a base ten number (decimal).
312    See "Notes" below.
313 x, _x
314    the number is interpreted as a base sixteen number (hexadecimal).
315 
316 
317 rN, _rN
318    the number is interpreted in the base N which is a decimal number
319    between 2 and 16 inclusive.
320 
321 
322 Notes on input integers:
323 A radix indicator may be appended to any input integer to specify its
324 numeric base.  Decimal is assumed if no radix indicator is given.
325 
326    INDICATOR   NUMERIC BASE              EXAMPLES
327     b or _b      base  2 or binary         1101b
328     q or _q      base  4 or quaternary     113q  (=23d)
329     o or _o      base  8 or octal          21o
330     d or _d      base 10 or decimal        17d or 17
331     x or _x      base 16 or hexadecimal    11x
332    rN or _rN     where N is base value
333                   between 2 and 16         44r5  (=24d)
334 
335 A negative value may be given using a leading minus (-) character:
336    -23
337 
338 
339 For octal input, a negative value may also be given using a 12-digit
340 octal format in which the left-most digit is 5, 6, or 7:
341    -1o is same as 777777777777o
342 
343 Digits for bases 11 through 16 may be entered using letters for digit
344 values beyond 9:
345    0 1 2 3 4 5 6 7 8 9 A B C D E F
346 with letters accepted in either uppercase or lowercase.
347 
348 For hexadecimal input, a negative value may also be given using a
349 9-digit hex format in which the left-most digit is: 8, 9, A, B, C, D,
350 E, or F:
351    -2x is same as FFFFFFFFEx
352 
353 
354 Notes: If string is not a proper character representation of an
355 integer, result will contain the converted value of the string, up to
356 but not including the incorrect character within the string.  If the
357 radix indicator is not valid, result will contain 0.  Code is not a
358 standard status code.  It therefore cannot be passed to com_err_ and
359 other subroutines that accept only standard status codes.
360 
361 
362 Conversion of an integer without radix indicator can be performed more
363 efficiently in PL/I by--
364 
365       on conversion, size goto badnumber;
366       result = convert (result, string);
367       revert conversion, size;
368          .
369          .
370          .
371       badnumber:
372       call com_err_ (error_table_$bad_conversion, proc, string);
373       return;
374 
375 
376 :Info: cv_hex_:  2021-10-28  cv_hex_
377 
378 Function: takes an ASCII representation of a hexadecimal integer, or
379 an integer with an optional trailing radix indicator.  It returns the
380 fixed binary(35) representation of that number.  The ASCII
381 representation may contain either uppercase or lowercase characters.
382 This entry point returns 0 if the convert operation fails.
383 
384 See also cv_hex_check_ for a routine that returns a code if the
385 convert operation fails.
386 
387 
388 Syntax:
389 declare cv_hex_ entry (char(*)) returns (fixed bin(35));
390 result = cv_hex_ (string);
391 
392 
393 Arguments:
394 result
395    is the converted fixed bin(35) value.  (Output)
396 string
397    is the string to be converted.  The number may be positive or
398    negative, and may have a trailing radix indicator as its last
399    character(s).  Space and/or horizontal tab characters around number
400    or between sign and the number are ignored.    (Input)
401 
402 
403 List of radix indicators:
404    Indicator characters may also be given in uppercase.
405 b, _b
406    the number is interpreted as a base two number (binary).
407    See "Notes" below.
408 q, _q
409    the number is interpreted as a base four number (quaternary).
410 o, _o
411    the number is interpreted as a base eight number (octal).
412 d, _d
413    the number is interpreted as a base ten number (decimal).
414    See "Notes" below.
415 x, _x
416    the number is interpreted as a base sixteen number (hexadecimal).
417 
418 
419 rN, _rN
420    the number is interpreted in the base N which is a decimal number
421    between 2 and 16 inclusive.
422 
423 
424 Notes on input integers:
425 A radix indicator may be appended to any input integer to specify its
426 numeric base.  Decimal is assumed if no radix indicator is given.
427 
428    INDICATOR   NUMERIC BASE              EXAMPLES
429     b or _b      base  2 or binary         1101b
430     q or _q      base  4 or quaternary     113q  (=23d)
431     o or _o      base  8 or octal          21o
432     d or _d      base 10 or decimal        17d or 17
433     x or _x      base 16 or hexadecimal    11x
434    rN or _rN     where N is base value
435                   between 2 and 16         44r5  (=24d)
436 
437 A negative value may be given using a leading minus (-) character:
438    -23
439 
440 
441 For octal input, a negative value may also be given using a 12-digit
442 octal format in which the left-most digit is 5, 6, or 7:
443    -1o is same as 777777777777o
444 
445 Digits for bases 11 through 16 may be entered using letters for digit
446 values beyond 9:
447    0 1 2 3 4 5 6 7 8 9 A B C D E F
448 with letters accepted in either uppercase or lowercase.
449 
450 For hexadecimal input, a negative value may also be given using a
451 9-digit hex format in which the left-most digit is: 8, 9, A, B, C, D,
452 E, or F:
453    -2 is same as FFFFFFFFE
454 
455 
456 Notes: If string is not a proper character representation of an
457 integer, result will contain the converted value of the string up to
458 but not including the incorrect character within the string.  If the
459 radix indicator or the default base is not valid, result will contain
460 0.
461 
462 
463 :Info: cv_hex_check_:  2021-10-28  cv_hex_check_
464 
465 Function: takes an ASCII representation of a hexadecimal integer, or an
466 integer with an optional trailing radix indicator.  It returns the
467 fixed binary(35) representation of that number.  The ASCII
468 representation may contain either uppercase or lowercase characters.
469 This entry point returns a code if the convert operation fails.
470 
471 See also cv_hex_ for a routine that returns 0 if the convert operation
472 fails.
473 
474 
475 Syntax:
476 declare cv_hex_check_ entry (char(*), fixed bin(35)),
477      returns (fixed bin(35));
478 result = cv_hex_check_ (string, code);
479 
480 
481 Arguments:
482 result
483    is the converted fixed bin(35) value.  (Output)
484 string
485    is the string to be converted.  The number may be positive or
486    negative, and may have a trailing radix indicator as its last
487    character(s).  Space and/or horizontal tab characters around number
488    or between sign and the number are ignored.   (Input)
489 code
490    is a code that equals 0 if no error occurred; otherwise, it is the
491    index of the character that terminated the conversion.  See "Note"
492    below.  (Output)
493 
494 
495 List of radix indicators:
496    Indicator characters may also be given in uppercase.
497 b, _b
498    the number is interpreted as a base two number (binary).
499    See "Notes" below.
500 q, _q
501    the number is interpreted as a base four number (quaternary).
502 o, _o
503    the number is interpreted as a base eight number (octal).
504 d, _d
505    the number is interpreted as a base ten number (decimal).
506    See "Notes" below.
507 x, _x
508    the number is interpreted as a base sixteen number (hexadecimal).
509 
510 
511 rN, _rN
512    the number is interpreted in the base N which is a decimal number
513    between 2 and 16 inclusive.
514 
515 
516 Notes on input integers:
517 A radix indicator may be appended to any input integer to specify its
518 numeric base.  Decimal is assumed if no radix indicator is given.
519 
520    INDICATOR   NUMERIC BASE              EXAMPLES
521     b or _b      base  2 or binary         1101b
522     q or _q      base  4 or quaternary     113q  (=23d)
523     o or _o      base  8 or octal          21o
524     d or _d      base 10 or decimal        17d or 17
525     x or _x      base 16 or hexadecimal    11x
526    rN or _rN     where N is base value
527                   between 2 and 16         44r5  (=24d)
528 
529 A negative value may be given using a leading minus (-) character:
530    -23
531 
532 
533 For octal input, a negative value may also be given using a 12-digit
534 octal format in which the left-most digit is 5, 6, or 7:
535    -1o is same as 777777777777o
536 
537 Digits for bases 11 through 16 may be entered using letters for digit
538 values beyond 9:
539    0 1 2 3 4 5 6 7 8 9 A B C D E F
540 with letters accepted in either uppercase or lowercase.
541 
542 For hexadecimal input, a negative value may also be given using a
543 9-digit hex format in which the left-most digit is: 8, 9, A, B, C, D,
544 E, or F:
545    -2 is same as FFFFFFFFE
546 
547 
548 Notes: If string is not a proper character representation of an
549 integer, result will contain the converted value of the string up to
550 but not including the incorrect character within the string.  If the
551 radix indicator or the default base is not valid, result will contain
552 0.  Code is not a standard status code.  It therefore cannot be passed
553 to com_err_ and other subroutines that accept only standard status
554 codes.
555 
556 
557 :Info: cv_integer_string_: 2021-10-27  cv_integer_string_
558 
559 Function: accepts an ASCII representation of an integer with an
560 optional trailing radix indicator and returns the fixed binary(35)
561 representation of that number.  This entry point signals a conversion
562 or size condition if the convert operation fails.
563 
564 See also cv_integer_string_check_ for a routine that returns a
565 status code if the convert operation fails.
566 
567 
568 Syntax:
569 declare cv_integer_string_ entry (char(*), fixed bin)
570      returns (fixed bin(35));
571 result = cv_integer_string_ (string, default_base);
572 
573 
574 Arguments:
575 result
576    is the converted fixed bin(35) value.  (Output)
577 string
578    is the string to be converted.  The number may be positive or
579    negative, and may have a trailing radix indicator as its last
580    character(s).  Space and/or horizontal tab characters around number
581    or between sign and the number are ignored.  (Input)
582 default_base
583    is the base to be used if the input string does not have a trailing
584    radix indicator.  This base may be any integer between 2 to 16
585    inclusive. (Input)
586 
587 
588 List of radix indicators:
589    Indicator characters may also be given in uppercase.
590 b, _b
591    the number is interpreted as a base two number (binary).
592    See "Notes" below.
593 q, _q
594    the number is interpreted as a base four number (quaternary).
595 o, _o
596    the number is interpreted as a base eight number (octal).
597 d, _d
598    the number is interpreted as a base ten number (decimal).
599    See "Notes" below.
600 x, _x
601    the number is interpreted as a base sixteen number (hexadecimal).
602 
603 
604 rN, _rN
605    the number is interpreted in the base N which is a decimal number
606    between 2 and 16 inclusive.
607 
608 
609 Notes on input integers:
610 A radix indicator may be appended to any input integer to specify its
611 numeric base.  Decimal is assumed if no radix indicator is given.
612 
613    INDICATOR   NUMERIC BASE              EXAMPLES
614     b or _b      base  2 or binary         1101b
615     q or _q      base  4 or quaternary     113q  (=23d)
616     o or _o      base  8 or octal          21o
617     d or _d      base 10 or decimal        17d or 17
618     x or _x      base 16 or hexadecimal    11x
619    rN or _rN     where N is base value
620                   between 2 and 16         44r5  (=24d)
621 
622 A negative value may be given using a leading minus (-) character:
623    -23
624 
625 
626 For octal input, a negative value may also be given using a 12-digit
627 octal format in which the left-most digit is 5, 6, or 7:
628    -1o is same as 777777777777o
629 
630 Digits for bases 11 through 16 may be entered using letters for digit
631 values beyond 9:
632    0 1 2 3 4 5 6 7 8 9 A B C D E F
633 with letters accepted in either uppercase or lowercase.
634 
635 For hexadecimal input, a negative value may also be given using a
636 9-digit hex format in which the left-most digit is: 8, 9, A, B, C, D,
637 E, or F:
638    -2x is same as FFFFFFFFEx
639 
640 
641 Notes: If string is not a proper character representation of an
642 integer, result will contain the converted value of the string, up to
643 but not including the incorrect character within the string.  If the
644 radix indicator or the default base is not valid result will contain
645 0.
646 
647 If the default base is larger than 11, a final "b" is treated as a
648 digit in the number rather than as a radix indicator.  Similarly, if
649 the default base is larger than 13, a final "d" is treated as a digit
650 in the number rather than as a radix indicator.  Use "_b" or "_d" as
651 the radix indicator for a default base larger than 11.
652 
653 
654 :Info: cv_integer_string_check_: 2021-10-28  cv_integer_string_check_
655 
656 Function: accepts an ASCII representation of an integer with an
657 optional trailing radix indicator and returns the fixed binary(35)
658 representation of that number.  This function returns a status code
659 if the convert operation fails.
660 
661 See also cv_integer_string_ for a routine that signals a conversion
662 or size condition if the convert operation fails.
663 
664 
665 Syntax:
666 declare cv_integer_string_check_ entry (char(*), fixed bin,
667      fixed bin(35)) returns (fixed bin(35));
668 result = cv_integer_string_check_ (string, default_base, code);
669 
670 
671 Arguments:
672 result
673    is the converted fixed bin(35) value.  (Output)
674 string
675    is the string to be converted.  The number may be positive or
676    negative, and may have a trailing radix indicator as its last
677    character(s).  Space and/or horizontal tab character around number,
678    or between sign and the number is ignored.  (Input)
679 default_base
680    is the base to be used if the input string does not have a trailing
681    radix indicator.  This base may be any integer between 2 and 16
682    inclusive. (Input)
683 
684 
685 code
686    is a standard Multics status code. (Output)  It may have one of the
687    following values:
688     0
689       the conversion completed without error.
690     error_table_$bad_arg
691       default_base is not in the valid range.
692     error_table_$bad_conversion
693       convert operation on the string failed.
694     error_table_$size_error
695       integer string has more digits than will fit in the
696       fixed bin(35) return value.
697 
698 
699 List of radix indicators:
700    Indicator characters may also be given in uppercase.
701 b, _b
702    the number is interpreted as a base two number (binary).
703    See "Notes" below.
704 q, _q
705    the number is interpreted as a base four number (quaternary).
706 o, _o
707    the number is interpreted as a base eight number (octal).
708 d, _d
709    the number is interpreted as a base ten number (decimal).
710    See "Notes" below.
711 x, _x
712    the number is interpreted as a base sixteen number (hexadecimal).
713 
714 
715 rN, _rN
716    the number is interpreted in the base N which is a decimal number
717    between 2 and 16 inclusive.
718 
719 
720 Notes on input integers:
721 A radix indicator may be appended to any input integer to specify its
722 numeric base.  Decimal is assumed if no radix indicator is given.
723 
724    INDICATOR   NUMERIC BASE              EXAMPLES
725     b or _b      base  2 or binary         1101b
726     q or _q      base  4 or quaternary     113q  (=23d)
727     o or _o      base  8 or octal          21o
728     d or _d      base 10 or decimal        17d or 17
729     x or _x      base 16 or hexadecimal    11x
730    rN or _rN     where N is base value
731                   between 2 and 16         44r5  (=24d)
732 
733 A negative value may be given using a leading minus (-) character:
734    -23
735 
736 
737 For octal input, a negative value may also be given using a 12-digit
738 octal format in which the left-most digit is 5, 6, or 7:
739    -1o is same as 777777777777o
740 
741 Digits for bases 11 through 16 may be entered using letters for digit
742 values beyond 9:
743    0 1 2 3 4 5 6 7 8 9 A B C D E F
744 with letters accepted in either uppercase or lowercase.
745 
746 For hexadecimal input, a negative value may also be given using a
747 9-digit hex format in which the left-most digit is: 8, 9, A, B, C, D,
748 E, or F:
749    -2x is same as FFFFFFFFEx
750 
751 
752 Notes:
753 If the default base is larger than 11, a final "b" is treated as a
754 digit in the number rather than as a radix indicator.  Similarly, if
755 the default base is larger than 13, a final "d" is treated as a digit
756 in the number rather than as a radix indicator.  Use "_b" or "_d" as
757 the radix indicator for a default base larger than 11.
758 
759 
760 :Info: cv_oct_:  2021-10-28  cv_oct_
761 
762 Function: takes an ASCII representation of an octal integer, or an
763 integer with an optional trailing radix indicator.  It returns the
764 fixed binary(35) representation of that number.  This entry point
765 returns 0 if the convert operation fails.
766 
767 See also cv_oct_check_ for a routine that returns a code if the
768 convert operation fails.
769 
770 
771 Syntax:
772 declare cv_oct_ entry (char(*)) returns (fixed bin(35));
773 result = cv_oct_ (string);
774 
775 
776 Arguments:
777 result
778    is the converted fixed bin(35) value.  (Output)
779 string
780    is the string to be converted.  The number may be positive or
781    negative, and may have a trailing radix indicator as its last
782    character(s).  Space and/or horizontal tab characters around number
783    or between sign and the number are ignored.    (Input)
784 
785 
786 List of radix indicators:
787    Indicator characters may also be given in uppercase.
788 b, _b
789    the number is interpreted as a base two number (binary).
790    See "Notes" below.
791 q, _q
792    the number is interpreted as a base four number (quaternary).
793 o, _o
794    the number is interpreted as a base eight number (octal).
795 d, _d
796    the number is interpreted as a base ten number (decimal).
797    See "Notes" below.
798 x, _x
799    the number is interpreted as a base sixteen number (hexadecimal).
800 
801 
802 rN, _rN
803    the number is interpreted in the base N which is a decimal number
804    between 2 and 16 inclusive.
805 
806 
807 Notes on input integers:
808 A radix indicator may be appended to any input integer to specify its
809 numeric base.  Decimal is assumed if no radix indicator is given.
810 
811    INDICATOR   NUMERIC BASE              EXAMPLES
812     b or _b      base  2 or binary         1101b
813     q or _q      base  4 or quaternary     113q  (=23d)
814     o or _o      base  8 or octal          21o
815     d or _d      base 10 or decimal        17d or 17
816     x or _x      base 16 or hexadecimal    11x
817    rN or _rN     where N is base value
818                   between 2 and 16         44r5  (=24d)
819 
820 A negative value may be given using a leading minus (-) character:
821    -23
822 
823 
824 For octal input, a negative value may also be given using a 12-digit
825 octal format in which the left-most digit is 5, 6, or 7:
826    -1 is same as 777777777777
827 
828 Digits for bases 11 through 16 may be entered using letters for digit
829 values beyond 9:
830    0 1 2 3 4 5 6 7 8 9 A B C D E F
831 with letters accepted in either uppercase or lowercase.
832 
833 For hexadecimal input, a negative value may also be given using a
834 9-digit hex format in which the left-most digit is: 8, 9, A, B, C, D,
835 E, or F:
836    -2x is same as FFFFFFFFEx
837 
838 
839 Notes: If string is not a proper character representation of an
840 integer, result will contain the converted value of the string up to
841 but not including the incorrect character within the string.  If the
842 radix indicator or the default base is not valid, result will contain
843 0.
844 
845 
846 :Info: cv_oct_check_:  2021-10-28  cv_oct_check_
847 
848 Function: takes an ASCII representation of an octal integer, or an
849 integer with an optional trailing radix indicator.  It returns the
850 fixed binary(35) representation of that number.  The ASCII
851 representation may contain either uppercase or lowercase characters.
852 This entry point returns a code if the convert operation fails.
853 
854 See also cv_oct_ for a routine that returns 0 if the convert operation
855 fails.
856 
857 
858 Syntax:
859 declare cv_oct_check_ entry (char(*), fixed bin(35)),
860      returns (fixed bin(35));
861 result = cv_oct_check_ (string, code);
862 
863 
864 Arguments:
865 result
866    is the converted fixed bin(35) value.  (Output)
867 string
868    is the string to be converted.  The number may be positive or
869    negative, and may have a trailing radix indicator as its last
870    character(s).  Space and/or horizontal tab characters around number
871    or between sign and the number are ignored.   (Input)
872 code
873    is a code that equals 0 if no error occurred; otherwise, it is the
874    index of the character that terminated the conversion.  See "Note"
875    below.  (Output)
876 
877 
878 List of radix indicators:
879    Indicator characters may also be given in uppercase.
880 b, _b
881    the number is interpreted as a base two number (binary).
882    See "Notes" below.
883 q, _q
884    the number is interpreted as a base four number (quaternary).
885 o, _o
886    the number is interpreted as a base eight number (octal).
887 d, _d
888    the number is interpreted as a base ten number (decimal).
889    See "Notes" below.
890 x, _x
891    the number is interpreted as a base sixteen number (hexadecimal).
892 
893 
894 rN, _rN
895    the number is interpreted in the base N which is a decimal number
896    between 2 and 16 inclusive.
897 
898 
899 Notes on input integers:
900 A radix indicator may be appended to any input integer to specify its
901 numeric base.  Decimal is assumed if no radix indicator is given.
902 
903    INDICATOR   NUMERIC BASE              EXAMPLES
904     b or _b      base  2 or binary         1101b
905     q or _q      base  4 or quaternary     113q  (=23d)
906     o or _o      base  8 or octal          21o
907     d or _d      base 10 or decimal        17d or 17
908     x or _x      base 16 or hexadecimal    11x
909    rN or _rN     where N is base value
910                   between 2 and 16         44r5  (=24d)
911 
912 A negative value may be given using a leading minus (-) character:
913    -23
914 
915 
916 For octal input, a negative value may also be given using a 12-digit
917 octal format in which the left-most digit is 5, 6, or 7:
918    -1 is same as 777777777777
919 
920 Digits for bases 11 through 16 may be entered using letters for digit
921 values beyond 9:
922    0 1 2 3 4 5 6 7 8 9 A B C D E F
923 with letters accepted in either uppercase or lowercase.
924 
925 For hexadecimal input, a negative value may also be given using a
926 9-digit hex format in which the left-most digit is: 8, 9, A, B, C, D,
927 E, or F:
928    -2x is same as FFFFFFFFEx
929 
930 
931 Notes: If string is not a proper character representation of an
932 integer, result will contain the converted value of the string up to
933 but not including the incorrect character within the string.  If the
934 radix indicator or the default base is not valid, result will contain
935 0.  Code is not a standard status code.  It therefore cannot be passed
936 to com_err_ and other subroutines that accept only standard status
937 codes.
938 
939 
940 :hcom:
941 /****^  HISTORY COMMENTS:
942   1) change(2021-10-28,GDixon), approve(2022-07-13,MCR10101),
943      audit(2022-07-27,Swenson):
944      A) Add a description for the existing cv_binary_ and cv_binary_check_
945         subroutines which had not be documented before.
946      B) Add descriptions for cv_dec_ and cv_dec_check_ subroutines which
947         now support an optional radix indicator at the end of the input
948         integer string.
949      C) Add descriptions for cv_hex_ and cv_hex_check_ subroutines which
950         now support an optional radix indicator at the end of the input
951         integer string.
952      D) Add descriptions for cv_oct_ and cv_oct_check_ subroutines which
953         now support an optional radix indicator at the end of the input
954         integer string.
955      E) In cv_integer_string_ description, remove note about nonstandard
956         code values.  Code only returns error_table_$bad_conversion,
957         error_table_$size_error,  or error_table_$bad_arg.
958      F) In cv_integer_string_check_ description, add description of radix
959         indicators which optionally end an input integer string.
960                                                    END HISTORY COMMENTS */