public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] add function attributes to sprintf() and snprintf()
@ 2001-11-07 16:24 Erik Mouw
  2001-11-09  5:24 ` James Antill
  0 siblings, 1 reply; 2+ messages in thread
From: Erik Mouw @ 2001-11-07 16:24 UTC (permalink / raw)
  To: Linux kernel mailing list; +Cc: Alan Cox, Linus Torvalds

Hi,

This patch adds function attributes to sprintf() and snprintf() so the
compiler can catch formatting errors at compile time. Patch is against
2.4.13-ac8, but it should apply cleanly against 2.4.14 as well.


Erik

-- 
J.A.K. (Erik) Mouw, Information and Communication Theory Group, Faculty
of Information Technology and Systems, Delft University of Technology,
PO BOX 5031, 2600 GA Delft, The Netherlands  Phone: +31-15-2783635
Fax: +31-15-2781843  Email: J.A.K.Mouw@its.tudelft.nl
WWW: http://www-ict.its.tudelft.nl/~erik/


Index: include/linux/kernel.h
===================================================================
RCS file: /home/erik/cvsroot/elinux/include/linux/kernel.h,v
retrieving revision 1.1.1.143
diff -u -r1.1.1.143 kernel.h
--- linux/include/linux/kernel.h	2001/11/07 00:36:34	1.1.1.143
+++ linux/include/linux/kernel.h	2001/11/07 15:49:54
@@ -60,9 +60,11 @@
 extern long simple_strtol(const char *,char **,unsigned int);
 extern unsigned long long simple_strtoull(const char *,char **,unsigned int);
 extern long long simple_strtoll(const char *,char **,unsigned int);
-extern int sprintf(char * buf, const char * fmt, ...);
+extern int sprintf(char * buf, const char * fmt, ...)
+	__attribute__ ((format (printf, 2, 3)));
 extern int vsprintf(char *buf, const char *, va_list);
-extern int snprintf(char * buf, size_t size, const char *fmt, ...);
+extern int snprintf(char * buf, size_t size, const char * fmt, ...)
+	__attribute__ ((format (printf, 3, 4)));
 extern int vsnprintf(char *buf, size_t size, const char *fmt, va_list args);
 
 extern int sscanf(const char *, const char *, ...)

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] add function attributes to sprintf() and snprintf()
  2001-11-07 16:24 [PATCH] add function attributes to sprintf() and snprintf() Erik Mouw
@ 2001-11-09  5:24 ` James Antill
  0 siblings, 0 replies; 2+ messages in thread
From: James Antill @ 2001-11-09  5:24 UTC (permalink / raw)
  To: Erik Mouw; +Cc: Linux kernel mailing list

Erik Mouw <J.A.K.Mouw@its.tudelft.nl> writes:

> Hi,
> 
> This patch adds function attributes to sprintf() and snprintf() so the
> compiler can catch formatting errors at compile time. Patch is against
> 2.4.13-ac8, but it should apply cleanly against 2.4.14 as well.

 This is done inside gcc as sprintf/snprintf/vsnprintf etc. are all
standard symbols so gcc automatically adds the attributes for them.

 In gcc 3.x it's all done in gcc/builtin-attrs.def

-- 
# James Antill -- james@and.org
:0:
* ^From: .*james@and\.org
/dev/null

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2001-11-09  5:26 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-11-07 16:24 [PATCH] add function attributes to sprintf() and snprintf() Erik Mouw
2001-11-09  5:24 ` James Antill

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox