Changeset c8ffd74f


Ignore:
Timestamp:
May 10, 2021, 2:18:17 PM (17 months ago)
Author:
Thierry Delisle <tdelisle@…>
Branches:
arm-eh, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast-unique-expr, pthread-emulation, qualifiedEnum
Children:
1680072
Parents:
3e1a705 (diff), 4ab767a (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

Location:
doc
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • doc/LaTeXmacros/common.tex

    r3e1a705 rc8ffd74f  
    1111%% Created On       : Sat Apr  9 10:06:17 2016
    1212%% Last Modified By : Peter A. Buhr
    13 %% Last Modified On : Tue Apr 27 12:03:17 2021
    14 %% Update Count     : 539
     13%% Last Modified On : Sat May  8 08:48:37 2021
     14%% Update Count     : 540
    1515%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1616
     
    3838\usepackage{xspace}
    3939\newcommand{\CFAIcon}{\textsf{C}\raisebox{\depth}{\rotatebox{180}{\textsf{A}}}} % Cforall icon
    40 \newcommand{\CFA}{\protect\CFAIcon\xspace}                      % CFA symbolic name
    41 \newcommand{\CFL}{\textrm{Cforall}\xspace}                      % Cforall non-icon name
    42 \newcommand{\Celeven}{\textrm{C11}\xspace}                      % C11 symbolic name
     40\newcommand{\CFA}{\protect\CFAIcon\xspace}                              % CFA symbolic name
     41\newcommand{\CFL}{\textrm{Cforall}\xspace}                              % Cforall non-icon name
     42\newcommand{\Celeven}{\textrm{C11}\xspace}                              % C11 symbolic name
    4343\newcommand{\CCIcon}{\textrm{C}\kern-.1em\hbox{+\kern-.25em+}} % C++ icon
    44 \newcommand{\CC}{\protect\CCIcon\xspace}                        % C++ symbolic name
     44\newcommand{\CC}[1][]{\protect\CCIcon{#1}\xspace}               % C++ symbolic name
    4545% numbers disallowed in latex variables names => use number names
    46 \newcommand{\CCeleven}{\protect\CCIcon{11}\xspace}      % C++11 symbolic name
    47 \newcommand{\CCfourteen}{\protect\CCIcon{14}\xspace} % C++14 symbolic name
    48 \newcommand{\CCseventeen}{\protect\CCIcon{17}\xspace} % C++17 symbolic name
    49 \newcommand{\CCtwenty}{\protect\CCIcon{20}\xspace}      % C++20 symbolic name
     46\newcommand{\CCeleven}{\protect\CCIcon{11}\xspace}              % C++11 symbolic name
     47\newcommand{\CCfourteen}{\protect\CCIcon{14}\xspace}    % C++14 symbolic name
     48\newcommand{\CCseventeen}{\protect\CCIcon{17}\xspace}   % C++17 symbolic name
     49\newcommand{\CCtwenty}{\protect\CCIcon{20}\xspace}              % C++20 symbolic name
    5050\newcommand{\Csharp}{C\raisebox{-0.7ex}{\Large$^\sharp$}\xspace} % C# symbolic name
    5151
     
    153153% Latin abbreviation
    154154\newcommand{\abbrevFont}{\textit}                       % set empty for no italics
     155% If not followed by a comma or colon, add a comma.
     156\newcommand{\CheckCommaColon}{\@ifnextchar{,}{}{\@ifnextchar{:}{}{,\xspace}}}
     157% If not followed by a period, add a period.
     158\newcommand{\CheckPeriod}{\@ifnextchar{.}{}{.\xspace}}
     159
    155160\@ifundefined{eg}{
    156161\newcommand{\EG}{\abbrevFont{e}.\abbrevFont{g}.}
    157 \newcommand*{\eg}{%
    158         \@ifnextchar{,}{\EG}%
    159                 {\@ifnextchar{:}{\EG}%
    160                         {\EG,\xspace}}%
    161 }}{}%
     162\newcommand{\eg}{\EG\CheckCommaColon}
     163}{}%
    162164\@ifundefined{ie}{
    163165\newcommand{\IE}{\abbrevFont{i}.\abbrevFont{e}.}
    164 \newcommand*{\ie}{%
    165         \@ifnextchar{,}{\IE}%
    166                 {\@ifnextchar{:}{\IE}%
    167                         {\IE,\xspace}}%
    168 }}{}%
     166\newcommand{\ie}{\IE\CheckCommaColon}
     167}{}%
    169168\@ifundefined{etc}{
    170169\newcommand{\ETC}{\abbrevFont{etc}}
    171 \newcommand*{\etc}{%
    172         \@ifnextchar{.}{\ETC}%
    173         {\ETC.\xspace}%
    174 }}{}%
     170\newcommand{\etc}{\ETC\CheckPeriod}
     171}{}%
    175172\@ifundefined{etal}{
    176173\newcommand{\ETAL}{\abbrevFont{et}~\abbrevFont{al}}
    177 \newcommand*{\etal}{%
    178         \@ifnextchar{.}{\protect\ETAL}%
    179                 {\protect\ETAL.\xspace}%
    180 }}{}%
     174\newcommand{\etal}{\ETAL\CheckPeriod}
     175}{}%
    181176\@ifundefined{viz}{
    182177\newcommand{\VIZ}{\abbrevFont{viz}}
    183 \newcommand*{\viz}{%
    184         \@ifnextchar{.}{\VIZ}%
    185                 {\VIZ.\xspace}%
    186 }}{}%
     178\newcommand{\viz}{\VIZ\CheckPeriod}
     179}{}%
    187180\makeatother
    188181
  • doc/user/Makefile

    r3e1a705 rc8ffd74f  
    6161
    6262${BASE}.dvi : Makefile ${GRAPHS} ${PROGRAMS} ${PICTURES} ${FIGURES} ${SOURCES} \
    63                 ${Macros}/common.tex ${Macros}/lstlang.sty ${Macros}/indexstyle ../bibliography/pl.bib build/version | ${Build}
     63                ${Macros}/common.sty ${Macros}/lstlang.sty ${Macros}/indexstyle ../bibliography/pl.bib build/version | ${Build}
    6464        # Conditionally create an empty *.ind (index) file for inclusion until makeindex is run.
    6565        if [ ! -r ${basename $@}.ind ] ; then touch ${Build}/${basename $@}.ind ; fi
     
    6868        -${BibTeX} ${Build}/${basename $@}
    6969        # Some citations reference others so run again to resolve these citations
    70         ${LaTeX} ${basename $@}.tex
     70#       ${LaTeX} ${basename $@}.tex
    7171        -${BibTeX} ${Build}/${basename $@}
    7272        # Make index from *.aux entries and input index at end of document
     
    7575        ${LaTeX} ${basename $@}.tex
    7676        # Run again to get index title into table of contents
    77         ${LaTeX} ${basename $@}.tex
     77#       ${LaTeX} ${basename $@}.tex
    7878
    7979## Define the default recipes.
  • doc/user/user.tex

    r3e1a705 rc8ffd74f  
    1111%% Created On       : Wed Apr  6 14:53:29 2016
    1212%% Last Modified By : Peter A. Buhr
    13 %% Last Modified On : Wed Apr 28 21:48:59 2021
    14 %% Update Count     : 5051
     13%% Last Modified On : Sat May  8 08:51:33 2021
     14%% Update Count     : 5062
    1515%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1616
     
    6565% keyword escape ¶...¶ (pilcrow symbol) emacs: C-q M-^
    6666% math escape $...$ (dollar symbol)
    67 \input{common}                                          % common CFA document macros
     67\usepackage{common}                                                                             % common CFA document macros
     68%\input{common}                                                                                 % common CFA document macros
    6869\setlength{\gcolumnposn}{3in}
    6970\CFAStyle                                                                                               % use default CFA format-style
     
    585586For example, the octal ©0© or hexadecimal ©0x© prefix may end with an underscore ©0_377© or ©0x_ff©;
    586587the exponent infix ©E© may start or end with an underscore ©1.0_E10©, ©1.0E_10© or ©1.0_E_10©;
    587 the type suffixes ©U©, ©L©, etc. may start with an underscore ©1_U©, ©1_ll© or ©1.0E10_f©.
     588the type suffixes ©U©, ©L©, \etc may start with an underscore ©1_U©, ©1_ll© or ©1.0E10_f©.
    588589\end{enumerate}
    589590It is significantly easier to read and enter long constants when they are broken up into smaller groupings (many cultures use comma and/or period among digits for the same purpose).
     
    15701571\end{cquote}
    15711572
    1572 All type qualifiers, \eg ©const©, ©volatile©, etc., are used in the normal way with the new declarations and also appear left to right, \eg:
     1573All type qualifiers, \eg ©const©, ©volatile©, \etc, are used in the normal way with the new declarations and also appear left to right, \eg:
    15731574\begin{cquote}
    15741575\begin{tabular}{@{}l@{\hspace{1em}}l@{\hspace{1em}}l@{}}
     
    15901591\end{tabular}
    15911592\end{cquote}
    1592 All declaration qualifiers, \eg ©extern©, ©static©, etc., are used in the normal way with the new declarations but can only appear at the start of a \CFA routine declaration,\footnote{\label{StorageClassSpecifier}
     1593All declaration qualifiers, \eg ©extern©, ©static©, \etc, are used in the normal way with the new declarations but can only appear at the start of a \CFA routine declaration,\footnote{\label{StorageClassSpecifier}
    15931594The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration is an obsolescent feature.~\cite[\S~6.11.5(1)]{C11}} \eg:
    15941595\begin{cquote}
     
    31473148also, it is unnecessary to specify all the fields of a struct in a multiple record-field tuple.
    31483149
    3149 Since tuple-index expressions are a form of member-access expression, it is possible to use tuple-index expressions in conjunction with member-access expressions to restructure a tuple (\eg, rearrange components, drop components, duplicate components, etc.).
     3150Since tuple-index expressions are a form of member-access expression, it is possible to use tuple-index expressions in conjunction with member-access expressions to restructure a tuple (\eg, rearrange components, drop components, duplicate components, \etc).
    31503151\begin{cfa}
    31513152[ int, int, long, double ] x;
     
    39723973
    39733974\item
    3974 \Indexc{sepOn}\index{manipulator!sepOn@©sepOn©} and \Indexc{sepOff}\index{manipulator!sepOff@©sepOff©} toggle printing the separator with respect to the next printed item, and then return to the global seperator setting.
     3975\Indexc{sepOn}\index{manipulator!sepOn@©sepOn©} and \Indexc{sepOff}\index{manipulator!sepOff@©sepOff©} toggle printing the separator with respect to the next printed item, and then return to the global separator setting.
    39753976\begin{cfa}[belowskip=0pt]
    39763977sout | 1 | sepOff | 2 | 3; $\C{// turn off implicit separator for the next item}$
     
    56595660\item
    56605661Package: a container to organize modules for distribution; It has attributes like name, author,
    5661 version, dependences, etc.
    5662 \item
    5663 Project: a working set for a \CFA project; It has attributes like name, author, version, dependences, etc.
     5662version, dependences, \etc.
     5663\item
     5664Project: a working set for a \CFA project; It has attributes like name, author, version, dependences, \etc.
    56645665\end{itemize}
    56655666
     
    57985799
    57995800A package is defined by putting a project description file, Do.prj, with one or more modules into a directory.
    5800 This project description file contains the package's meta data, including package name, author, version, dependences, etc.
     5801This project description file contains the package's meta data, including package name, author, version, dependences, \etc.
    58015802It should be in the root of the package directory.
    58025803
     
    58555856Module: a container to organize a set of related types and methods; It has a module name, and several interfaces visible from outside
    58565857\item
    5857 Package: a container to organize modules for distribution; It has attributes like name, author, version, dependences, etc.
    5858 \item
    5859 Project: a working set for a \CFA project; It has attributes like name, author, version, dependences, etc.
     5858Package: a container to organize modules for distribution; It has attributes like name, author, version, dependences, \etc.
     5859\item
     5860Project: a working set for a \CFA project; It has attributes like name, author, version, dependences, \etc.
    58605861\end{itemize}
    58615862
Note: See TracChangeset for help on using the changeset viewer.