% This LaTeX file generated by cxref
% cxref program (c) Andrew M. Bishop 1995,96,97.

\markboth{File warn-raw.c}{File warn-raw.c}
\section{File warn-raw.c}
\label{file_warn-raw.c}

{\bf RCS Header: /home/amb/cxref/RCS/warn-raw.c 1.26 1999/01/24 16:53:50 amb Exp }

\smallskip

  C Cross Referencing \& Documentation tool. Version 1.5.

  Writes the raw information and / or warnings out.


\subsection*{Included Files}

\begin{cxreftabi}
{\stt \#include <stdlib.h>} &\\
\end{cxreftabi}

\medskip
\begin{cxreftabi}
{\stt \#include <stdio.h>} &\\
\end{cxreftabi}

\medskip
\begin{cxreftabi}
{\stt \#include <string.h>} &\\
\end{cxreftabi}

\medskip
\begin{cxreftabi}
{\stt \#include "datatype.h"} &\cxreffile{datatype.h}\\
\end{cxreftabi}

\medskip
\begin{cxreftabi}
{\stt \#include "cxref.h"} &\cxreffile{cxref.h}\\
\hspace*{0.2in}{\stt \#include "datatype.h"} &\cxreffile{datatype.h}\\
\end{cxreftabi}

\medskip
\begin{cxreftabi}
{\stt \#include "memory.h"} &\cxreffile{memory.h}\\
\end{cxreftabi}


\subsection{Variables}


\subsubsection{External Variables}

{\bf option\_warn}
\label{var_option_warn_warn-raw.c}

 Output option. 

\smallskip
{\stt extern int option\_warn}

\smallskip
\begin{cxreftabiii}
Defined in:& cxref.c & \ & \cxrefvar{option_warn}{cxref.c}\\
\end{cxreftabiii}

\medskip
{\bf option\_raw}
\label{var_option_raw_warn-raw.c}

 Output option. 

\smallskip
{\stt extern int option\_raw}

\smallskip
\begin{cxreftabiii}
Defined in:& cxref.c & \ & \cxrefvar{option_raw}{cxref.c}\\
\end{cxreftabiii}

\medskip
{\bf option\_xref}
\label{var_option_xref_warn-raw.c}

 Output option. 

\smallskip
{\stt extern int option\_xref}

\smallskip
\begin{cxreftabiii}
Defined in:& cxref.c & \ & \cxrefvar{option_xref}{cxref.c}\\
\end{cxreftabiii}

\medskip
{\bf option\_index}
\label{var_option_index_warn-raw.c}

 Output option. 

\smallskip
{\stt extern int option\_index}

\smallskip
\begin{cxreftabiii}
Defined in:& cxref.c & \ & \cxrefvar{option_index}{cxref.c}\\
\end{cxreftabiii}


\subsubsection{Local Variables}

{\bf filename}
\label{var_filename_warn-raw.c}

 The name of the current file. 

\smallskip
{\stt static char* filename}

\smallskip
\begin{cxreftabiii}
Used in:\ & WriteWarnRawDefine() & \ & \cxreffunc{WriteWarnRawDefine}{warn-raw.c}\\
\ & WriteWarnRawFile() & \ & \cxreffunc{WriteWarnRawFile}{warn-raw.c}\\
\ & WriteWarnRawFilePart() & \ & \cxreffunc{WriteWarnRawFilePart}{warn-raw.c}\\
\ & WriteWarnRawFunction() & \ & \cxreffunc{WriteWarnRawFunction}{warn-raw.c}\\
\ & WriteWarnRawInclude() & \ & \cxreffunc{WriteWarnRawInclude}{warn-raw.c}\\
\ & WriteWarnRawTypedef() & \ & \cxreffunc{WriteWarnRawTypedef}{warn-raw.c}\\
\ & WriteWarnRawVariable() & \ & \cxreffunc{WriteWarnRawVariable}{warn-raw.c}\\
\end{cxreftabiii}


\subsection{Functions}


\subsubsection{Global Function CopyOrSkip()}
\label{func_CopyOrSkip_warn-raw.c}

  Decide if to copy or skip the next line.

\smallskip
{\stt int CopyOrSkip ( char* string, char* type, int* copy, int* skip )}

\smallskip
\begin{cxrefarglist}
\cxrefargitem{int CopyOrSkip} Returns the number of characters to skip.
\cxrefargitem{char* string} The string that starts the next line.
\cxrefargitem{char* type} The type of file we are outputing.
\cxrefargitem{int* copy} Returns true if we are to copy the line verbatim.
\cxrefargitem{int* skip} Returns true if we are to skip the line.
\end{cxrefarglist}

\smallskip
\begin{cxreftabiii}
Prototype:& cxref.h & \ & \cxreffile{cxref.h}\\
Calls:\ & \cxreftabiiispan{ strncmp()} &\\
Called by:\ & html() & html.c & \cxreffunc{html}{html.c}\\
\ & latex() & latex.c & \cxreffunc{latex}{latex.c}\\
\ & rtf() & rtf.c & \cxreffunc{rtf}{rtf.c}\\
\cxreftabbreak{cxreftabiii}
\ & sgml() & sgml.c & \cxreffunc{sgml}{sgml.c}\\
\end{cxreftabiii}


\subsubsection{Global Function WriteWarnRawAppendix()}
\label{func_WriteWarnRawAppendix_warn-raw.c}

  Write out a raw version of the appendix.

\smallskip
{\stt void WriteWarnRawAppendix ( StringList files, StringList2 funcs, StringList2 vars, StringList2 types )}

\smallskip
\begin{cxrefarglist}
\cxrefargitem{StringList files} The list of files to write.
\cxrefargitem{StringList2 funcs} The list of functions to write.
\cxrefargitem{StringList2 vars} The list of variables to write.
\cxrefargitem{StringList2 types} The list of types to write.
\end{cxrefarglist}

\smallskip
\begin{cxreftabiii}
Prototype:& cxref.h & \ & \cxreffile{cxref.h}\\
Calls:\ & \cxreftabiiispan{ printf()} &\\
Called by:\ & main() & cxref.c & \cxreffunc{main}{cxref.c}\\
Refs Var:\ & option\_index & cxref.c & \cxrefvar{option_index}{cxref.c}\\
\ & option\_warn & cxref.c & \cxrefvar{option_warn}{cxref.c}\\
\cxreftabbreak{cxreftabiii}
\end{cxreftabiii}


\subsubsection{Global Function WriteWarnRawFile()}
\label{func_WriteWarnRawFile_warn-raw.c}

  Write the raw / warning output for a complete File structure and all components.

\smallskip
{\stt void WriteWarnRawFile ( File file )}

\smallskip
\begin{cxrefarglist}
\cxrefargitem{File file} The File structure to output.
\end{cxrefarglist}

\smallskip
 The file structure is broken into its components and they are each written out. 

\smallskip
\begin{cxreftabiii}
Prototype:& cxref.h & \ & \cxreffile{cxref.h}\\
Calls:\ & WriteWarnRawDefine() & warn-raw.c & \cxreffunc{WriteWarnRawDefine}{warn-raw.c}\\
\ & WriteWarnRawFilePart() & warn-raw.c & \cxreffunc{WriteWarnRawFilePart}{warn-raw.c}\\
\ & WriteWarnRawFunction() & warn-raw.c & \cxreffunc{WriteWarnRawFunction}{warn-raw.c}\\
\cxreftabbreak{cxreftabiii}
\ & WriteWarnRawInclude() & warn-raw.c & \cxreffunc{WriteWarnRawInclude}{warn-raw.c}\\
\ & WriteWarnRawTypedef() & warn-raw.c & \cxreffunc{WriteWarnRawTypedef}{warn-raw.c}\\
\ & WriteWarnRawVariable() & warn-raw.c & \cxreffunc{WriteWarnRawVariable}{warn-raw.c}\\
\ & \cxreftabiiispan{ printf()} &\\
Called by:\ & main() & cxref.c & \cxreffunc{main}{cxref.c}\\
Refs Var:\ & filename & warn-raw.c & \cxrefvar{filename}{warn-raw.c}\\
\ & option\_raw & cxref.c & \cxrefvar{option_raw}{cxref.c}\\
\end{cxreftabiii}


\subsubsection{Local Function WriteWarnRawDefine()}
\label{func_WriteWarnRawDefine_warn-raw.c}

  Write a Define structure out.

\smallskip
{\stt static void WriteWarnRawDefine ( Define def )}

\smallskip
\begin{cxrefarglist}
\cxrefargitem{Define def} The Define structure to output.
\end{cxrefarglist}

\smallskip
\begin{cxreftabiii}
Prototype:& warn-raw.c & \ & \cxreffile{warn-raw.c}\\
Calls:\ & \cxreftabiiispan{ printf()} &\\
Called by:\ & WriteWarnRawFile() & warn-raw.c & \cxreffunc{WriteWarnRawFile}{warn-raw.c}\\
Refs Var:\ & filename & warn-raw.c & \cxrefvar{filename}{warn-raw.c}\\
\ & option\_raw & cxref.c & \cxrefvar{option_raw}{cxref.c}\\
\cxreftabbreak{cxreftabiii}
\ & option\_warn & cxref.c & \cxrefvar{option_warn}{cxref.c}\\
\end{cxreftabiii}


\subsubsection{Local Function WriteWarnRawFilePart()}
\label{func_WriteWarnRawFilePart_warn-raw.c}

  Write a File structure out.

\smallskip
{\stt static void WriteWarnRawFilePart ( File file )}

\smallskip
\begin{cxrefarglist}
\cxrefargitem{File file} The File structure to output.
\end{cxrefarglist}

\smallskip
\begin{cxreftabiii}
Prototype:& warn-raw.c & \ & \cxreffile{warn-raw.c}\\
Calls:\ & \cxreftabiiispan{ printf(), strcmp(), strlen()} &\\
Called by:\ & WriteWarnRawFile() & warn-raw.c & \cxreffunc{WriteWarnRawFile}{warn-raw.c}\\
Refs Var:\ & filename & warn-raw.c & \cxrefvar{filename}{warn-raw.c}\\
\ & option\_raw & cxref.c & \cxrefvar{option_raw}{cxref.c}\\
\cxreftabbreak{cxreftabiii}
\ & option\_warn & cxref.c & \cxrefvar{option_warn}{cxref.c}\\
\ & option\_xref & cxref.c & \cxrefvar{option_xref}{cxref.c}\\
\end{cxreftabiii}


\subsubsection{Local Function WriteWarnRawFunction()}
\label{func_WriteWarnRawFunction_warn-raw.c}

  Write a Function structure out.

\smallskip
{\stt static void WriteWarnRawFunction ( Function func )}

\smallskip
\begin{cxrefarglist}
\cxrefargitem{Function func} The Function structure to output.
\end{cxrefarglist}

\smallskip
\begin{cxreftabiii}
Prototype:& warn-raw.c & \ & \cxreffile{warn-raw.c}\\
Calls:\ & \cxreftabiiispan{ printf(), strcmp(), strncmp()} &\\
Called by:\ & WriteWarnRawFile() & warn-raw.c & \cxreffunc{WriteWarnRawFile}{warn-raw.c}\\
Refs Var:\ & filename & warn-raw.c & \cxrefvar{filename}{warn-raw.c}\\
\ & option\_raw & cxref.c & \cxrefvar{option_raw}{cxref.c}\\
\cxreftabbreak{cxreftabiii}
\ & option\_warn & cxref.c & \cxrefvar{option_warn}{cxref.c}\\
\ & option\_xref & cxref.c & \cxrefvar{option_xref}{cxref.c}\\
\end{cxreftabiii}


\subsubsection{Local Function WriteWarnRawInclude()}
\label{func_WriteWarnRawInclude_warn-raw.c}

  Write an Include structure out.

\smallskip
{\stt static void WriteWarnRawInclude ( Include inc )}

\smallskip
\begin{cxrefarglist}
\cxrefargitem{Include inc} The Include structure to output.
\end{cxrefarglist}

\smallskip
\begin{cxreftabiii}
Prototype:& warn-raw.c & \ & \cxreffile{warn-raw.c}\\
Calls:\ & WriteWarnRawSubInclude() & warn-raw.c & \cxreffunc{WriteWarnRawSubInclude}{warn-raw.c}\\
\ & \cxreftabiiispan{ printf()} &\\
Called by:\ & WriteWarnRawFile() & warn-raw.c & \cxreffunc{WriteWarnRawFile}{warn-raw.c}\\
Refs Var:\ & filename & warn-raw.c & \cxrefvar{filename}{warn-raw.c}\\
\cxreftabbreak{cxreftabiii}
\ & option\_raw & cxref.c & \cxrefvar{option_raw}{cxref.c}\\
\ & option\_warn & cxref.c & \cxrefvar{option_warn}{cxref.c}\\
\end{cxreftabiii}


\subsubsection{Local Function WriteWarnRawStructUnion()}
\label{func_WriteWarnRawStructUnion_warn-raw.c}

  Write a structure / union / enum out.

\smallskip
{\stt static void WriteWarnRawStructUnion ( StructUnion su, int depth, StructUnion base )}

\smallskip
\begin{cxrefarglist}
\cxrefargitem{StructUnion su} The structure / union / enum to write.
\cxrefargitem{int depth} The depth within the structure.
\cxrefargitem{StructUnion base} The base struct union that this one is part of.
\end{cxrefarglist}

\smallskip
\begin{cxreftabiii}
Prototype:& warn-raw.c & \ & \cxreffile{warn-raw.c}\\
Calls:\ & WriteWarnRawStructUnion() & warn-raw.c & \cxreffunc{WriteWarnRawStructUnion}{warn-raw.c}\\
\ & \cxreftabiiispan{ printf(), strstr()} &\\
Called by:\ & WriteWarnRawStructUnion() & warn-raw.c & \cxreffunc{WriteWarnRawStructUnion}{warn-raw.c}\\
\ & WriteWarnRawTypedef() & warn-raw.c & \cxreffunc{WriteWarnRawTypedef}{warn-raw.c}\\
\cxreftabbreak{cxreftabiii}
Refs Var:\ & option\_raw & cxref.c & \cxrefvar{option_raw}{cxref.c}\\
\ & option\_warn & cxref.c & \cxrefvar{option_warn}{cxref.c}\\
\end{cxreftabiii}


\subsubsection{Local Function WriteWarnRawSubInclude()}
\label{func_WriteWarnRawSubInclude_warn-raw.c}

  Write an Sub-Include structure out.

\smallskip
{\stt static void WriteWarnRawSubInclude ( Include inc, int depth )}

\smallskip
\begin{cxrefarglist}
\cxrefargitem{Include inc} The Include structure to output.
\cxrefargitem{int depth} The depth of the include hierarchy.
\end{cxrefarglist}

\smallskip
\begin{cxreftabiii}
Prototype:& warn-raw.c & \ & \cxreffile{warn-raw.c}\\
Calls:\ & WriteWarnRawSubInclude() & warn-raw.c & \cxreffunc{WriteWarnRawSubInclude}{warn-raw.c}\\
\ & \cxreftabiiispan{ printf()} &\\
Called by:\ & WriteWarnRawInclude() & warn-raw.c & \cxreffunc{WriteWarnRawInclude}{warn-raw.c}\\
\ & WriteWarnRawSubInclude() & warn-raw.c & \cxreffunc{WriteWarnRawSubInclude}{warn-raw.c}\\
\cxreftabbreak{cxreftabiii}
\end{cxreftabiii}


\subsubsection{Local Function WriteWarnRawTypedef()}
\label{func_WriteWarnRawTypedef_warn-raw.c}

  Write a Typedef structure out.

\smallskip
{\stt static void WriteWarnRawTypedef ( Typedef type )}

\smallskip
\begin{cxrefarglist}
\cxrefargitem{Typedef type} The Typedef structure to output.
\end{cxrefarglist}

\smallskip
\begin{cxreftabiii}
Prototype:& warn-raw.c & \ & \cxreffile{warn-raw.c}\\
Calls:\ & WriteWarnRawStructUnion() & warn-raw.c & \cxreffunc{WriteWarnRawStructUnion}{warn-raw.c}\\
\ & \cxreftabiiispan{ printf()} &\\
Called by:\ & WriteWarnRawFile() & warn-raw.c & \cxreffunc{WriteWarnRawFile}{warn-raw.c}\\
Refs Var:\ & filename & warn-raw.c & \cxrefvar{filename}{warn-raw.c}\\
\cxreftabbreak{cxreftabiii}
\ & option\_raw & cxref.c & \cxrefvar{option_raw}{cxref.c}\\
\ & option\_warn & cxref.c & \cxrefvar{option_warn}{cxref.c}\\
\end{cxreftabiii}


\subsubsection{Local Function WriteWarnRawVariable()}
\label{func_WriteWarnRawVariable_warn-raw.c}

  Write a Variable structure out.

\smallskip
{\stt static void WriteWarnRawVariable ( Variable var )}

\smallskip
\begin{cxrefarglist}
\cxrefargitem{Variable var} The Variable structure to output.
\end{cxrefarglist}

\smallskip
\begin{cxreftabiii}
Prototype:& warn-raw.c & \ & \cxreffile{warn-raw.c}\\
Calls:\ & \cxreftabiiispan{ printf(), strcmp()} &\\
Called by:\ & WriteWarnRawFile() & warn-raw.c & \cxreffunc{WriteWarnRawFile}{warn-raw.c}\\
Refs Var:\ & filename & warn-raw.c & \cxrefvar{filename}{warn-raw.c}\\
\ & option\_raw & cxref.c & \cxrefvar{option_raw}{cxref.c}\\
\cxreftabbreak{cxreftabiii}
\ & option\_warn & cxref.c & \cxrefvar{option_warn}{cxref.c}\\
\ & option\_xref & cxref.c & \cxrefvar{option_xref}{cxref.c}\\
\end{cxreftabiii}

