/*
-** LCLint - annotation-assisted static program checker
-** Copyright (C) 1994-2000 University of Virginia,
+** Splint - annotation-assisted static program checker
+** Copyright (C) 1994-2002 University of Virginia,
** Massachusetts Institute of Technology
**
** This program is free software; you can redistribute it and/or modify it
**
** For information on lclint: lclint-request@cs.virginia.edu
** To report a bug: lclint-bug@cs.virginia.edu
-** For more information: http://lclint.cs.virginia.edu
+** For more information: http://www.splint.org
*/
/*
** message.c
{
XINVALID,
XCHAR, XSTRING, XSTRINGFREE, XTSTRINGFREE, XINT, XFLOAT, XBOOL, XUENTRY,
- XPERCENT, XCTYPE, XPLURAL, XREPREFIX, XFILELOC
+ XPERCENT, XCTYPE, XPLURAL, XREPREFIX, XFILELOC, XPOINTER
} ccode;
/* char *s, anytype v */
** advances *c to next character.
*/
-static ccode
- identify_control (char **s)
+static ccode identify_control (char **s)
{
char c;
if (c >= '0' && c <= '9')
{
- modcode = getInt (s);
+ modcode = reader_getInt (s);
}
c = **s;
return (XBOOL);
case 't':
return (XCTYPE);
+ case 'p':
+ return (XPOINTER);
case 'l':
return (XFILELOC);
- case 'p':
+ case '&':
return (XPLURAL);
case 'r':
return (XREPREFIX);
ret = mstring_concatFree1 (ret, cstring_toCharsSafe
(ctype_unparse (va_arg (pvar, ctype))));
break;
+ case XPOINTER:
+ ret = mstring_concatFree (ret, GETPRINTF ("%p", va_arg (pvar, void *)));
+ break;
+
case XFILELOC:
ret = mstring_concatFree (ret, cstring_toCharsSafe
(fileloc_unparse (va_arg (pvar, fileloc))));