1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-25 08:12:11 -07:00
Add __attribute__((__format__(printf))) to functions that take a printf-compatible format string (when building using GCC or Clang), so that format string mistakes can be detected statically.

Copied from Perforce
 Change: 185021
 ServerID: perforce.ravenbrook.com
This commit is contained in:
Gareth Rees 2014-03-26 12:27:35 +00:00
parent 8da10d1ffd
commit 4bd5435314
4 changed files with 24 additions and 3 deletions

View file

@ -95,9 +95,21 @@
#include "mpsioan.c"
#endif
/* ANSI back end. */
#if defined(CONFIG_ANSI)
#include "lockan.c" /* generic locks */
#include "than.c" /* generic threads manager */
#include "vman.c" /* malloc-based pseudo memory mapping */
#include "protan.c" /* generic memory protection */
#include "prmcan.c" /* generic protection mutator context */
#include "span.c" /* generic stack probe */
#include "ssan.c" /* generic stack scanner */
/* Mac OS X on 32-bit Intel built with Clang or GCC */
#if defined(MPS_PF_XCI3LL) || defined(MPS_PF_XCI3GC)
#elif defined(MPS_PF_XCI3LL) || defined(MPS_PF_XCI3GC)
#include "lockix.c" /* Posix locks */
#include "thxc.c" /* OS X Mach threading */

View file

@ -4439,6 +4439,10 @@
3114A654156E9596001E0AA3 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
GCC_PREPROCESSOR_DEFINITIONS = (
"CONFIG_VAR_COOL=1",
"CONFIG_ANSI=1",
);
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
@ -4523,6 +4527,10 @@
3124CAC0156BE3EC00753214 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
GCC_PREPROCESSOR_DEFINITIONS = (
CONFIG_VAR_COOL,
CONFIG_ANSI,
);
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;

View file

@ -59,7 +59,7 @@ void ProtSync(Arena arena)
ShieldLeave(arena);
synced = FALSE;
}
} while(SegNext(&seg, arena, base));
} while(SegNext(&seg, arena, seg));
}
} while(!synced);
}

View file

@ -63,11 +63,12 @@ Res VMParamFromArgs(void *params, size_t paramSize, ArgList args)
/* VMCreate -- reserve some virtual address space, and create a VM structure */
Res VMCreate(VM *vmReturn, Size size)
Res VMCreate(VM *vmReturn, Size size, void *params)
{
VM vm;
AVER(vmReturn != NULL);
AVER(params != NULL);
/* Note that because we add VMANPageALIGNMENT rather than */
/* VMANPageALIGNMENT-1 we are not in danger of overflowing */