Changeset 41096dc
- Timestamp:
- Sep 3, 2020, 4:25:33 PM (4 years ago)
- Branches:
- ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- 47dd0d2
- Parents:
- 406970b1
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/man/cfa.1
r406970b1 r41096dc 11 11 .\" Created On : Wed Jul 26 22:34:47 2017 12 12 .\" Last Modified By : Peter A. Buhr 13 .\" Last Modified On : Thu Jul 27 10:29:29 201714 .\" Update Count : 4413 .\" Last Modified On : Wed Sep 2 17:59:53 2020 14 .\" Update Count : 78 15 15 .\" 16 16 .\" nroff -man cfa.1 … … 23 23 .ds Cf "Cforall 24 24 .\" 25 .TH cfa 1 2017-07-27 cfa-\*(Mg25 .TH CFA 1 "2020-09-2" cfa-\*(Mg "\*(Cf Project" 26 26 .SH NAME 27 cfa \- \*(Cf Translator and Runtime Library27 cfa \- \*(Cf project translator and runtime library to enhance C 28 28 .SH SYNOPSIS 29 cfa [gcc-options] [C/\*(Cf source-files] [assembler/loader files] 29 cfa [cfa/gcc-options] 30 [cfa/c source-files] 31 [assembler/loader files] 30 32 .SH DESCRIPTION 33 \*(Cf (C-for-all) is an open-source project extending ISO C with modern safety and productivity features, while still ensuring backwards compatibility with C and its programmers. 34 31 35 The cfa command compiles C and \*(Cf source files and links C/\*(Cf object 32 36 files named on the command line. … … 34 38 The cfa command introduces a translator pass over the specified source files 35 39 after the C preprocessor but before the C compilation. The translator converts 36 new \*(Cf constructs into C statements. The cfa command also provides the 37 runtime library, which is linked with each \*(Cf application. 40 new \*(Cf constructs into C statements. The cfa command also provides a fully 41 concurrent (user-level threads) runtime library, which is linked with the 42 \*(Cf application. 38 43 39 44 The command line options depend on the particular C compiler used (gcc/clang 40 45 supported). As with most C compilers, the output is sent to the file a.out(5) 41 46 unless the -o option is present on the command line. See the reference pages 42 for gcc(1) for more information .47 for gcc(1) for more information on command line options. 43 48 .SH OPTIONS 44 49 When multiple conflicting options appear on the command line, e.g., … … 50 55 All of the options available to the gcc compiler are available to the cfa 51 56 translator. The following gcc flags are implicitly turned on: 52 .IP -std=gnu99 3 53 The 1999 C standard plus GNU extensions. 54 .IP -fgnu89-inline 55 Use the traditional GNU semantics for inline routines in C99 mode, which allows inline routines in header files. 57 .IP "-std=gnu11" 3 58 The 2011 C standard plus GNU extensions. 59 .IP "-fgnu89-inline" 60 Use the traditional GNU semantics for inline routines in C11 mode, which allows inline routines in header files. 61 .IP "-imacros stdbool.h" 62 Include stdbool.h to get defines for bool/true/false. 63 .IP "-latomic -lm" 64 Provide access to double-wide CAS instruction and math library. 56 65 .LP 57 66 The following additional options are available: 58 .IP -CFA367 .IP "-CFA" 3 59 68 Only the C preprocessor and the \*(Cf translator steps are performed and the transformed program is written to standard output, which makes it possible to examine the code generated by the \*(Cf translator. 60 69 The generated code starts with the standard \*(Cf prelude. 61 .IP -debug70 .IP "-debug" 62 71 The program is linked with the debugging version of the runtime system. 63 72 The debug version performs runtime checks to help during the debugging phase of a \*(Cf program, but can substantially slow program execution. 64 73 The runtime checks should only be removed after the program is completely debugged. 65 74 .B This option is the default. 66 .IP -nodebug75 .IP "-nodebug" 67 76 The program is linked with the non-debugging version of the runtime system, so the execution of the program is faster. 68 77 .I However, no runtime checks or asserts are performed so errors usually result in abnormal program behaviour or termination. 69 .IP -help78 .IP "-help" 70 79 Information about the set of \*(Cf compilation flags is printed. 71 .IP -nohelp80 .IP "-nohelp" 72 81 Information about the set of \*(Cf compilation flags is not printed. 73 82 .B This option is the default. 74 .IP -quiet83 .IP "-quiet" 75 84 The \*(Cf compilation message is not printed at the beginning of a compilation. 76 .IP -noquiet85 .IP "-noquiet" 77 86 The \*(Cf compilation message is printed at the beginning of a compilation. 78 87 .B This option is the default. … … 81 90 available. These variables allow conditional compilation of programs that must 82 91 work differently in these situations. 83 .IP __CFA_MAJOR__392 .IP "__CFA_MAJOR__" 3 84 93 is available during preprocessing and its value is the major version number of \*(Cf. 85 .IP __CFA_MINOR__94 .IP "__CFA_MINOR__" 86 95 is available during preprocessing and its value is the minor version number of \*(Cf. 87 .IP __CFA_PATCH__96 .IP "__CFA_PATCH__" 88 97 is available during preprocessing and its value is the patch level number of \*(Cf. 89 98 .IP "__CFA__, __CFORALL__, and __cforall" 90 99 are always available during preprocessing and have no value. 91 .IP __CFA_DEBUG__100 .IP "__CFA_DEBUG__" 92 101 is available during preprocessing if the -debug compilation option is 93 102 specified. … … 116 125 .SH REFERENCES 117 126 .HP 3 118 \*(Cf Reference and Rational Manual 127 .I \*(Cf Home Page 119 128 .br 120 http ://plg.uwaterloo.ca/~cforall/refrat.pdf129 https://cforall.uwaterloo.ca 121 130 .HP 122 131 .I \*(Cf User Manual 123 132 .br 124 http://plg.uwaterloo.ca/~cforall/user.pdf 133 https://cforall.uwaterloo.ca/doc/user.pdf 134 .SH BUILDS 135 Nightly builds are available here https://cforall.uwaterloo.ca/jenkins 125 136 .SH BUGS 126 Bugs should be reported to trac@plg.cs.uwaterloo.ca.137 Bugs reportss are available here https://cforall.uwaterloo.ca/trac 127 138 .SH COPYRIGHT 128 139 \*(Cf is covered under the licence agreement in the distribution. 129 140 .SH AUTHORS 130 141 Andrew Beach, Richard Bilson, Peter A. Buhr, Thierry Delisle, Glen Ditchfield, 131 Rodolfo G. Esteves, Aaron Moss, Rob Schluntz 142 Rodolfo G. Esteves, Aaron Moss, Rob Schluntz, Mubeen Zulfiqar
Note: See TracChangeset
for help on using the changeset viewer.