Fix -DNEDUG builds
- assert() is macro which is defined as empty, while panic is always present. I added an explicit abort() after the macro to make sure the function never returns in case of wrong flags. - Fixed gcc build with -NDEBUG, -Os for ARM. * A few 'may be used uninitialized' messages * A few new missing support library functions where added in libminc. Change-Id: I69fcda2cd3888390b7ddeff4c0cd849105ce86ff
This commit is contained in:
parent
da9af514b5
commit
20a91f7755
6 changed files with 27 additions and 3 deletions
5
external/bsd/flex/dist/scanopt.c
vendored
5
external/bsd/flex/dist/scanopt.c
vendored
|
@ -715,6 +715,11 @@ int scanopt (svoid, arg, optindex)
|
||||||
struct _aux *auxp;
|
struct _aux *auxp;
|
||||||
int is_short;
|
int is_short;
|
||||||
int opt_offset = -1;
|
int opt_offset = -1;
|
||||||
|
#if defined(__minix)
|
||||||
|
/* triggers a 'may be used uninitialized', when compiled with gcc,
|
||||||
|
* asserts off, and -Os. */
|
||||||
|
is_short = 0;
|
||||||
|
#endif /* defined(__minix) */
|
||||||
|
|
||||||
s = (struct _scanopt_t *) svoid;
|
s = (struct _scanopt_t *) svoid;
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include <dirent.h>
|
#include <dirent.h>
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
|
#include <stdlib.h> /* for abort() */
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <minix/const.h>
|
#include <minix/const.h>
|
||||||
#include <minix/type.h> /* for unshort :-( */
|
#include <minix/type.h> /* for unshort :-( */
|
||||||
|
@ -56,5 +57,8 @@ uint8_t fs_mode_to_type(mode_t mode)
|
||||||
else if(S_ISSOCK(mode)) return DT_SOCK;
|
else if(S_ISSOCK(mode)) return DT_SOCK;
|
||||||
|
|
||||||
assert(0 && "unknown type");
|
assert(0 && "unknown type");
|
||||||
|
|
||||||
|
/* assert()s are removed on NDEBUG builds. */
|
||||||
|
abort();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -127,7 +127,8 @@ CPPFLAGS.sha2.c+= -D_STANDALONE
|
||||||
CPPFLAGS.sha2.c+= -I${NETBSDSRCDIR}/sys
|
CPPFLAGS.sha2.c+= -I${NETBSDSRCDIR}/sys
|
||||||
|
|
||||||
.for f in \
|
.for f in \
|
||||||
divdi3.o moddi3.o udivdi3.o umoddi3.o qdivrem.o
|
ashrdi3.o divdi3.o lshldi3.o lshrdi3.o moddi3.o \
|
||||||
|
udivdi3.o umoddi3.o qdivrem.o
|
||||||
${f} ${f:C/\.o/.bc/}: ${LIBCOMMONCDIR}/quad/${f:C/\.o/.c/}
|
${f} ${f:C/\.o/.bc/}: ${LIBCOMMONCDIR}/quad/${f:C/\.o/.c/}
|
||||||
OBJS+= ${f}
|
OBJS+= ${f}
|
||||||
CLEANFILES+= ${f}
|
CLEANFILES+= ${f}
|
||||||
|
|
|
@ -338,6 +338,11 @@ Targ_FindNode(const char *name, int flags)
|
||||||
Boolean isNew; /* Set TRUE if Hash_CreateEntry had to create */
|
Boolean isNew; /* Set TRUE if Hash_CreateEntry had to create */
|
||||||
/* an entry for the node */
|
/* an entry for the node */
|
||||||
|
|
||||||
|
#if defined(__minix)
|
||||||
|
/* triggers a 'may be used uninitialized', when compiled with gcc,
|
||||||
|
* asserts off, and -Os. */
|
||||||
|
he = NULL;
|
||||||
|
#endif /* defined(__minix) */
|
||||||
if (!(flags & (TARG_CREATE | TARG_NOHASH))) {
|
if (!(flags & (TARG_CREATE | TARG_NOHASH))) {
|
||||||
he = Hash_FindEntry(&targets, name);
|
he = Hash_FindEntry(&targets, name);
|
||||||
if (he == NULL)
|
if (he == NULL)
|
||||||
|
|
|
@ -230,9 +230,13 @@ main(int argc, char **argv)
|
||||||
const char *prefix = NULL;
|
const char *prefix = NULL;
|
||||||
const char *suffixes = NULL, *s;
|
const char *suffixes = NULL, *s;
|
||||||
suff_list_t *suff_list = NULL, *sl;
|
suff_list_t *suff_list = NULL, *sl;
|
||||||
#ifdef __minix
|
#if defined(__minix)
|
||||||
size_t nr;
|
size_t nr;
|
||||||
#endif
|
|
||||||
|
/* triggers a 'may be used uninitialized', when compiled with gcc,
|
||||||
|
* asserts off, and -Os. */
|
||||||
|
slen = 0;
|
||||||
|
#endif /* defined(__minix) */
|
||||||
|
|
||||||
suf = NULL; /* XXXGCC -Wuninitialized [sun2] */
|
suf = NULL; /* XXXGCC -Wuninitialized [sun2] */
|
||||||
sl = NULL; /* XXXGCC -Wuninitialized [sun2] */
|
sl = NULL; /* XXXGCC -Wuninitialized [sun2] */
|
||||||
|
|
|
@ -166,6 +166,11 @@ process(FILE *fp)
|
||||||
char buff[4 * MB_LEN_MAX + 1]; /* max encoding length for one char */
|
char buff[4 * MB_LEN_MAX + 1]; /* max encoding length for one char */
|
||||||
int mbilen, cerr = 0, raerr = 0;
|
int mbilen, cerr = 0, raerr = 0;
|
||||||
|
|
||||||
|
#if defined(__minix)
|
||||||
|
/* triggers a 'may be used uninitialized', when compiled with gcc,
|
||||||
|
* asserts off, and -Os. */
|
||||||
|
rachar = 0;
|
||||||
|
#endif /* defined(__minix) */
|
||||||
/*
|
/*
|
||||||
* The input stream is considered to be multibyte characters.
|
* The input stream is considered to be multibyte characters.
|
||||||
* The input loop will read this data inputing one character,
|
* The input loop will read this data inputing one character,
|
||||||
|
|
Loading…
Reference in a new issue