diff options
author | Norbert Preining <norbert@preining.info> | 2020-10-12 03:04:00 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2020-10-12 03:04:00 +0000 |
commit | 0ce40abb18ec02ec6fd6bcc5f21612c88daa7578 (patch) | |
tree | 416289fe1448873fd8ca33051f50ad85bffa8aaa /support/splint/cweb/checklists.w | |
parent | fdb18507cd80dc17f5a5256153d34668b4f4e61c (diff) |
CTAN sync 202010120303
Diffstat (limited to 'support/splint/cweb/checklists.w')
-rw-r--r-- | support/splint/cweb/checklists.w | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/support/splint/cweb/checklists.w b/support/splint/cweb/checklists.w new file mode 100644 index 0000000000..754855d747 --- /dev/null +++ b/support/splint/cweb/checklists.w @@ -0,0 +1,82 @@ +% Copyright 2012-2020, Alexander Shibakov +% Copyright 2002-2014 Free Software Foundation, Inc. +% This file is part of SPLinT +% +% SPLinT is free software: you can redistribute it and/or modify +% it under the terms of the GNU General Public License as published by +% the Free Software Foundation, either version 3 of the License, or +% (at your option) any later version. +% +% SPLinT is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with SPLinT. If not, see <http://www.gnu.org/licenses/>. + +@** Checklists. This (experimental) section serves to aid in the +testing and extension of \splint\ by formalizing a number of procedures +in the form of a checklist. After having witnessed first hand the effectiveness +of checklists in aviation, the author feels that a similar approach +will be beneficial in programming, as well. Most of these tests can and +should be automated but the applicable situations are rather rare so +the automation has not been implemented yet. + +{% +\def\aterm#1{\item{\sqebullet\ }{\ttl #1}\ignorespaces}% +\def\aaterm#1{\itemitem{\sqebullet\ }{\ttl #1}\ignorespaces}% +\def\aaaterm#1{\itemitemitem{\sqebullet\ }{\ttl #1}\ignorespaces}% +\setbox0=\hbox{\sqebullet\ \enspace} +\parindent=0pt +\advance\parindent by \wd0 +\bigskip +\noindent{\ttl General checklist.} +\smallskip +\aterm{} Have the checklists in this section been followed? + +\aterm{} Have {\it all\/} the examples been built and tested? + +\aaterm{} \.{make}: this would build the \.{ld} parser, as well as other +parts, like \.{ssfo.pdf}, etc. + +\aaterm{} \.{symbols} + +\aaterm{} \.{xxpression} (both \.{make} and \.{make test}) + +\aaterm{} \.{expression} (both \.{make} and \.{make test}) + +\aaterm{} once in a while it is useful to run a tool like \.{diffpdf} to check +that the generated output does not change unexpectedly + +\aaterm{} \.{parsec} (not part of \splint) + +\aterm{} Have the changes been documented? + +\aaterm{} If any limitations have been removed, has this been reflected +in the documentation, examples, such as \.{symbols.sty}? + +\aaterm{} If any new conditionals have been added, does \.{yydebug.sty} provide +a way to check their status, if appropriate? + +\aaterm{} If any new script option has been added, has the script documentation been +updated? + +\aterm{} If a new process has been introduced, has it been reflected in any of the checklists in +this section? + +\bigskip +\noindent{\ttl Rewriting checklist.} +\smallskip +\aterm{} Is the output of the new system identical? + +\aaterm{} once in a while it is useful to run a tool like \.{diffpdf} to check +that the generated output does not change unexpectedly + +\aaterm{} has \.{diff} been used to check that \.{.gdx} and \.{.gdy} files produced +are (nearly) identical? + +\aaterm{} has \.{diff} been used to check that \.{.sns} files produced by \.{symbols} +and \.{xxpression} examples are (nearly) identical? + +} |