- 1 Getting started
- 2 Compile
- 3 Customize
- 4 Optimize
- 5 Debug
- 6 Non-standard extensions
- 7 System Routines
- 附录 A
- 附录 B
- 附录 E
- 附录 I
E.3 System names: switch
SWITCH-0
, SWITCH-1
, SWITCH-2
, SWITCH-3
, SWITCH-4
, SWITCH-5
, SWITCH-6
, SWITCH-7
, SWITCH-8
, SWITCH-9
, SWITCH-10
, SWITCH-11
, SWITCH-12
, SWITCH-13
, SWITCH-14
, SWITCH-15
, SWITCH-16
, SWITCH-17
, SWITCH-18
, SWITCH-19
, SWITCH-20
, SWITCH-21
, SWITCH-22
, SWITCH-23
, SWITCH-24
, SWITCH-25
, SWITCH-26
, SWITCH-27
, SWITCH-28
, SWITCH-29
, SWITCH-30
, SWITCH-31
, SWITCH-32
, SWITCH-33
, SWITCH-34
, SWITCH-35
, SWITCH-36
Appendix F Exception names
The following list of exception names was extracted from cobc --list-exceptions
and shows the exception names and if those are fatal (lead to a program abort).
All of those can be activated and deactivated, both directly and at group level, using -fec.
Exception Name EC-ALL EC-ARGUMENT EC-ARGUMENT-FUNCTION (f) EC-ARGUMENT-IMP EC-BOUND EC-BOUND-FUNC-RET-VALUE EC-BOUND-IMP EC-BOUND-ODO (f) EC-BOUND-OVERFLOW (f) EC-BOUND-PTR (f) EC-BOUND-REF-MOD (f) EC-BOUND-SET (f) EC-BOUND-SUBSCRIPT (f) EC-BOUND-TABLE-LIMIT (f) EC-CONTINUE EC-CONTINUE-IMP EC-CONTINUE-LESS-THAN-ZERO EC-DATA EC-DATA-CONVERSION EC-DATA-IMP EC-DATA-INCOMPATIBLE (f) EC-DATA-NOT-FINITE (f) EC-DATA-OVERFLOW (f) EC-DATA-PTR-NULL (f) EC-EXTERNAL EC-EXTERNAL-DATA-MISMATCH (f) EC-EXTERNAL-FILE-MISMATCH (f) EC-EXTERNAL-FORMAT-CONFLICT (f) EC-EXTERNAL-IMP EC-FLOW EC-FLOW-APPLY-COMMIT (f) EC-FLOW-COMMIT (f) EC-FLOW-GLOBAL-EXIT (f) EC-FLOW-GLOBAL-GOBACK (f) EC-FLOW-IMP EC-FLOW-RELEASE (f) EC-FLOW-REPORT (f) EC-FLOW-RETURN (f) EC-FLOW-ROLLBACK (f) EC-FLOW-SEARCH (f) EC-FLOW-USE (f) EC-FUNCTION EC-FUNCTION-ARG-OMITTED (f) EC-FUNCTION-IMP EC-FUNCTION-NOT-FOUND (f) EC-FUNCTION-PTR-INVALID (f) EC-FUNCTION-PTR-NULL (f) EC-I-O EC-I-O-AT-END EC-I-O-EOP EC-I-O-EOP-OVERFLOW EC-I-O-FILE-SHARING EC-I-O-IMP EC-I-O-INVALID-KEY EC-I-O-LINAGE (f) EC-I-O-LOGIC-ERROR (f) EC-I-O-PERMANENT-ERROR (f) EC-I-O-RECORD-CONTENT (f) EC-I-O-RECORD-OPERATION EC-I-O-RECORD-WARNING EC-IMP EC-IMP-ACCEPT EC-IMP-DISPLAY EC-IMP-UTC-UNKNOWN (f) EC-IMP-FEATURE-DISABLED EC-IMP-FEATURE-MISSING EC-LOCALE EC-LOCALE-IMP EC-LOCALE-INCOMPATIBLE EC-LOCALE-INVALID (f) EC-LOCALE-INVALID-PTR (f) EC-LOCALE-MISSING (f) EC-LOCALE-SIZE (f) EC-MCS EC-MCS-ABNORMAL-TERMINATION EC-MCS-IMP EC-MCS-INVALID-TAG EC-MCS-MESSAGE-LENGTH EC-MCS-NO-REQUESTER EC-MCS-NO-SERVER EC-MCS-NORMAL-TERMINATION EC-MCS-REQUESTOR-FAILED EC-OO EC-OO-ARG-OMITTED (f) EC-OO-CONFORMANCE (f) EC-OO-EXCEPTION (f) EC-OO-IMP EC-OO-METHOD (f) EC-OO-NULL (f) EC-OO-RESOURCE (f) EC-OO-UNIVERSAL (f) EC-ORDER EC-ORDER-IMP EC-ORDER-NOT-SUPPORTED (f) EC-OVERFLOW EC-OVERFLOW-IMP EC-OVERFLOW-STRING EC-OVERFLOW-UNSTRING EC-PROGRAM EC-PROGRAM-ARG-MISMATCH (f) EC-PROGRAM-ARG-OMITTED (f) EC-PROGRAM-CANCEL-ACTIVE (f) EC-PROGRAM-IMP EC-PROGRAM-NOT-FOUND (f) EC-PROGRAM-PTR-NULL (f) EC-PROGRAM-RECURSIVE-CALL (f) EC-PROGRAM-RESOURCES (f) EC-RAISING EC-RAISING-IMP EC-RAISING-NOT-SPECIFIED (f) EC-RANGE EC-RANGE-IMP EC-RANGE-INDEX (f) EC-RANGE-INSPECT-SIZE (f) EC-RANGE-INVALID EC-RANGE-PERFORM-VARYING (f) EC-RANGE-PTR (f) EC-RANGE-SEARCH-INDEX EC-RANGE-SEARCH-NO-MATCH EC-REPORT EC-REPORT-ACTIVE (f) EC-REPORT-COLUMN-OVERLAP (f) EC-REPORT-FILE-MODE (f) EC-REPORT-IMP EC-REPORT-INACTIVE (f) EC-REPORT-LINE-OVERLAP EC-REPORT-NOT-TERMINATED EC-REPORT-PAGE-LIMIT EC-REPORT-PAGE-WIDTH EC-REPORT-SUM-SIZE (f) EC-REPORT-VARYING (f) EC-SCREEN EC-SCREEN-FIELD-OVERLAP EC-SCREEN-IMP EC-SCREEN-ITEM-TRUNCATED EC-SCREEN-LINE-NUMBER EC-SCREEN-STARTING-COLUMN EC-SIZE EC-SIZE-ADDRESS (f) EC-SIZE-EXPONENTIATION (f) EC-SIZE-IMP EC-SIZE-OVERFLOW (f) EC-SIZE-TRUNCATION (f) EC-SIZE-UNDERFLOW (f) EC-SIZE-ZERO-DIVIDE (f) EC-SORT-MERGE EC-SORT-MERGE-ACTIVE (f) EC-SORT-MERGE-FILE-OPEN (f) EC-SORT-MERGE-IMP EC-SORT-MERGE-RELEASE (f) EC-SORT-MERGE-RETURN (f) EC-SORT-MERGE-SEQUENCE (f) EC-STORAGE EC-STORAGE-IMP EC-STORAGE-NOT-ALLOC EC-STORAGE-NOT-AVAIL EC-USER EC-VALIDATE EC-VALIDATE-CONTENT EC-VALIDATE-FORMAT EC-VALIDATE-IMP EC-VALIDATE-RELATION EC-VALIDATE-VARYING (f) EC-XML EC-XML-CODESET (f) EC-XML-CODESET-CONVERSION (f) EC-XML-COUNT (f) EC-XML-DOCUMENT-TYPE (f) EC-XML-IMPLICIT-CLOSE (f) EC-XML-INVALID (f) EC-XML-NAMESPACE (f) EC-XML-STACKED-OPEN (f) EC-XML-RANGE (f) EC-XML-IMP (f) EC-JSON EC-JSON-IMP (f)
Appendix G Compiler Configuration
The following list was extracted from config/default.conf.
# Value: any string name: "GnuCOBOL" # Value: enum standard-define 0 # NOTE: see enum cb_std_def, defined in cobc/cobc.h. # CB_STD_GC = 0, # CB_STD_MF, # CB_STD_IBM, # CB_STD_MVS, # CB_STD_BS2000, # CB_STD_ACU, # CB_STD_RM, # CB_STD_85, # CB_STD_2002, # CB_STD_2014 # Default source reference-format; values: FIXED, FREE, COBOL85, # VARIABLE, XOPEN, XCARD, CRT, TERMINAL, COBOLX format: fixed # Value: int tab-width: 8 text-column: 72 # Maximum word-length for COBOL words / Programmer defined words # Be aware that GC checks the word length against COB_MAX_WORDLEN # first (currently 63) word-length: 63 # Maximum literal size in general literal-length: 8191 # Maximum numeric literal size (absolute maximum: 38) numeric-literal-length: 38 # Maximum number of characters allowed in the character-string (max. 255) pic-length: 255 # Enable AREACHECK by default, for reference formats other than {fixed,free} areacheck: no # Default assign type # Value: 'dynamic', 'external' assign-clause: dynamic # If yes, file names are resolved at run time using # environment variables. # For example, given ASSIGN TO "DATAFILE", the file name will be # 1. the value of environment variable 'DD_DATAFILE' or # 2. the value of environment variable 'dd_DATAFILE' or # 3. the value of environment variable 'DATAFILE' or # 4. the literal "DATAFILE" # If no, the value of the assign clause is the file name. # filename-mapping: yes # Alternate formatting of numeric fields pretty-display: yes # Allow complex OCCURS DEPENDING ON complex-odo: no # Adjust position of items following OCCURS DEPENDING odoslide: no # Allow REDEFINES to other than last equal level number indirect-redefines: no # Binary byte size - defines the allocated bytes according to PIC # Value: signed unsigned bytes # ------ -------- ----- # '2-4-8' 1 - 4 same 2 # 5 - 9 same 4 # 10 - 18 same 8 # # '1-2-4-8' 1 - 2 same 1 # 3 - 4 same 2 # 5 - 9 same 4 # 10 - 18 same 8 # # '1--8' 1 - 2 1 - 2 1 # 3 - 4 3 - 4 2 # 5 - 6 5 - 7 3 # 7 - 9 8 - 9 4 # 10 - 11 10 - 12 5 # 12 - 14 13 - 14 6 # 15 - 16 15 - 16 7 # 17 - 18 17 - 18 8 # binary-size: 1-2-4-8 # Numeric truncation according to ANSI binary-truncate: yes # Binary byte order # Value: 'native', 'big-endian' binary-byteorder: big-endian # Allow larger REDEFINES items other than 01 non-external larger-redefines: error # Allow certain syntax variations (eg. REDEFINES position) relax-syntax-checks: no # Allow zero length reference-modification # (only checked with active EC-BOUND-REF-MOD) ref-mod-zero-length: yes # Perform type OSVS - If yes, the exit point of any currently # executing perform is recognized if reached. perform-osvs: no # Compute intermediate decimal results like IBM OSVS arithmetic-osvs: no # MOVE like IBM (mvc); left to right, byte by byte move-ibm: no # SELECT RELATIVE KEY and ASSIGN fields must be in WORKING-STORAGE select-working: no # LOCAL-STORAGE SECTION implies RECURSIVE attribute local-implies-recursive: no # If yes, LINKAGE SECTION items remain allocated # between invocations. sticky-linkage: no # If yes, allow non-matching level numbers relax-level-hierarchy: no # If yes, evaluate constant expressions at compile time constant-folding: yes # Allow Hex 'F' for NUMERIC test of signed PACKED DECIMAL field hostsign: no # If yes, set WITH UPDATE clause as default for ACCEPT dest-item, # except if WITH NO UPDATE clause is used accept-update: no # If yes, set WITH AUTO clause as default for ACCEPT dest-item, # except if WITH TAB clause is used accept-auto: no # If yes, DISPLAYs and ACCEPTs are, by default, done on the CRT (i.e., using # curses). console-is-crt: no # If yes, allow redefinition of the current program's name. This prevents its # use in a prototype-format CALL/CANCEL statement. program-name-redefinition: yes # If yes, NO ECHO/NO-ECHO/OFF is the same as SECURE (hiding input with # asterisks, not spaces). no-echo-means-secure: no # If yes, the first item in a field screen ACCEPT/DISPLAY (e.g. DISPLAY x UPON # CRT) is located after the previous ACCEPT/DISPLAY (as though LINE 0 COL 0 had # been specified). line-col-zero-default: yes # If yes, DISPLAY SPACES acts as ERASE EOS, DISPLAY X"01" acts as ERASE EOL, # DISPLAY X"02" acts as BLANK SCREEEN and DISPLAY X"07" acts as BELL. Note # DISPLAY LOW-VALUE is excluded from this; it will always just position the # cursor. display-special-fig-consts: no # If yes, COMP-1 is a signed 16-bit integer and any PICTURE clause is ignored. binary-comp-1: no # If yes, POINTER is handled as BINARY-DOUBLE UNSIGNED instead of its own class numeric-pointer: no # auto-adjust to zero like MicroFocus does move-non-numeric-lit-to-numeric-is-zero: no # If yes, implicitly define a variable for an ASSIGN DYNAMIC which does not # match an existing data item. implicit-assign-dynamic-var: yes # If yes, ACCEPT and DISPLAY statements accept device names using mnemonics device-mnemonics: no # full clauses in XML PARSE - and adjusted XML-EVENTs xml-parse-xmlss: yes # What rules to apply to SCREEN SECTION items clauses screen-section-rules: gc # Whether DECIMAL-POINT IS COMMA has effect in XML/JSON GENERATE dpc-in-data: xml # Dialect features # Value: 'ok', 'warning', 'archaic', 'obsolete', 'skip', 'ignore', 'error', # 'unconformable' alter-statement: obsolete comment-paragraphs: obsolete control-division: unconformable partial-replacing-with-literal: obsolete call-overflow: archaic data-records-clause: obsolete debugging-mode: ok use-for-debugging: ok listing-statements: skip # may be a user-defined word title-statement: skip # may be a user-defined word entry-statement: ok goto-statement-without-name: obsolete label-records-clause: obsolete memory-size-clause: obsolete move-noninteger-to-alphanumeric: error move-figurative-constant-to-numeric: archaic move-figurative-space-to-numeric: error move-figurative-quote-to-numeric: obsolete multiple-file-tape-clause: obsolete next-sentence-phrase: archaic odo-without-to: warning padding-character-clause: obsolete section-segments: ignore stop-literal-statement: obsolete stop-identifier-statement: obsolete stop-error-statement: unconformable same-as-clause: ok type-to-clause: ok usage-type: ok synchronized-clause: ok sync-left-right: ok special-names-clause: ok top-level-occurs-clause: ok value-of-clause: obsolete numeric-boolean: ok hexadecimal-boolean: ok national-literals: ok hexadecimal-national-literals: ok national-character-literals: warning acu-literals: unconformable hp-octal-literals: unconformable word-continuation: warning not-exception-before-exception: ok accept-display-extensions: ok renames-uncommon-levels: ok symbolic-constant: ok constant-78: ok constant-01: ok perform-varying-without-by: ok reference-out-of-declaratives: warning program-prototypes: ok call-convention-mnemonic: ok call-convention-linkage: ok numeric-value-for-edited-item: ok incorrect-conf-sec-order: ok define-constant-directive: archaic free-redefines-position: warning records-mismatch-record-clause warning record-delimiter: ok sequential-delimiters: ok record-delim-with-fixed-recs: ok missing-statement: warning missing-period: warning #when format not in {fixed,free} zero-length-literals: ok xml-generate-extra-phrases: ok continue-after: ok goto-entry: warning assign-variable: ok assign-using-variable: ok assign-ext-dyn: ok assign-disk-from: ok vsam-status: ignore self-call-recursive: warning record-contains-depending-clause: unconformable defaultbyte: init picture-l: ok # use complete word list; synonyms and exceptions are specified below reserved-words: default # not-reserved: # Value: Word to be taken out of the reserved words list not-reserved: TERMINAL not-reserved: EXAMINE # reserved: # Entries of the form word-1=word-2 define word-1 as an alias for default # reserved word word-2. No spaces are allowed around the equal sign. reserved: AUTO-SKIP=AUTO reserved: AUTOTERMINATE=AUTO reserved: BACKGROUND-COLOUR=BACKGROUND-COLOR reserved: BEEP=BELL reserved: BINARY-INT=BINARY-LONG reserved: BINARY-LONG-LONG=BINARY-DOUBLE reserved: CELLS=CELL reserved: COLOURS=COLORS reserved: EMPTY-CHECK=REQUIRED reserved: EQUALS=EQUAL reserved: FOREGROUND-COLOUR=FOREGROUND-COLOR reserved: HIGH-VALUES=HIGH-VALUE reserved: INITIALISE=INITIALIZE reserved: INITIALISED=INITIALIZED reserved: LENGTH-CHECK=FULL reserved: LOW-VALUES=LOW-VALUE reserved: ORGANISATION=ORGANIZATION reserved: PIXELS=PIXEL reserved: SYNCHRONISED=SYNCHRONIZED reserved: TIMEOUT=TIME-OUT reserved: ZEROES=ZERO reserved: ZEROS=ZERO
Appendix H Module loader cobcrun
options
The following list of options was extracted from cobcrun --help
and shows all available options for the module loader with a short description.
-h, --help
display this help and exit
-V, --version
display version information for cobcrun + runtime and exit
-dumpversion
display runtime version and exit
-i, --info
display runtime information (build/environment)
-v, --verbose
display extended output with –info
-c file, --config=file
set runtime configuration from file
-r, --runtime-config
display current runtime configuration (value and origin for all settings)
-M module, --module=module
set entry point module name and/or load path where -M module prepends any directory to the dynamic link loader library search path and any basename to the module preload list (
COB_LIBRARY_PATH
and/orCOB_PRELOAD
)
Appendix I Runtime configuration
The following list was extracted from config/runtime.cfg.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论