struct arglist {
/*@null@*/ struct arglist *next;
/*@dependent@*/ char *name;
- int length;
+ size_t length;
int argno;
int rest_args;
};
/* Current maximum length of directory names in the search path
for include files. (Altered as we get more of them.) */
- int max_include_len;
+ size_t max_include_len;
/*@null@*/ struct if_stack *if_stack;
int lineno;
/*@null@*/ /*@observer@*/ struct tm *timebuf;
-
-#ifdef __cplusplus
- ~cppReader () { cppCleanup (this); }
-#endif
};
/*@constant int cppReader_fatalErrorLimit; @*/
extern void cpplib_reserve (/*@sef@*/ cppReader *, /*@sef@*/ size_t);
#define cpplib_reserve(PFILE, N) \
- (cpplib_getWritten (PFILE) + (N) > (PFILE)->token_buffer_size \
- && (cppReader_growBuffer (PFILE, (N)), 0))
+ (((cpplib_getWritten (PFILE) + (N) > (PFILE)->token_buffer_size)) ? cppReader_growBuffer (PFILE, (N)) : (void) 0)
/* Append string STR (of length N) to PFILE's output buffer.
Assume there is enough space. */
/* Name of output file, for error messages. */
/*@dependent@*/ cstring out_fname;
- struct file_name_map_list *map_list;
+ /*@only@*/ struct file_name_map_list *map_list;
/* Non-0 means -v, so print the full set of include dirs. */
bool verbose;
/* First dir to search */
/*@owned@*/ struct file_name_list *include;
+
/* First dir to search for <file> */
/* This is the first element to use for #include <...>.
If it is 0, use the entire chain for such includes. */
{
/*@null@*/ struct definition *defn;
/*@exposed@*/ /*@relnull@*/ char *symnam; /* null if defn is null */
- int symlen;
+ size_t symlen;
};
/* Structure allocated for every #define. For a simple replacement
};
typedef struct if_stack cppIfStackFrame;
-extern void cppBuffer_lineAndColumn (/*@null@*/ cppBuffer *, /*@out@*/ int *,
- /*@out@*/ /*@null@*/ int *);
+extern void cppBuffer_getLineAndColumn (/*@null@*/ cppBuffer *, /*@out@*/ int *,
+ /*@out@*/ /*@null@*/ int *);
extern /*@exposed@*/ /*@null@*/ cppBuffer *cppReader_fileBuffer (cppReader *);
extern void cppReader_growBuffer (cppReader *, size_t);
};
extern void cppReader_addIncludeChain (/*@special@*/ cppReader *p_pfile,
- /*@keep@*/ struct file_name_list *p_dir)
+ /*@only@*/ struct file_name_list *p_dir)
/*@uses p_pfile->opts, p_pfile->max_include_len@*/
/*@modifies p_pfile, p_dir@*/ ;
#define INCLUDE_LEN_FUDGE 0
#endif
-extern int cppReader_checkMacroName (cppReader *p_pfile, char *p_symname,
- cstring p_usage);
+extern size_t cppReader_checkMacroName (cppReader *p_pfile, char *p_symname,
+ cstring p_usage);
-extern struct operation cppReader_parseNumber (cppReader *, char *, int);
+extern struct operation cppReader_parseNumber (cppReader * p_pfile, char * p_start, int p_olen) /*@requires maxRead(p_start) >= (p_olen - 1) @*/;