ksh/ksh93-gcc.dif

66 lines
2.1 KiB
Plaintext

--- src/lib/libast/misc/optget.c
+++ src/lib/libast/misc/optget.c 2013-01-28 14:52:53.000000000 +0000
@@ -4367,9 +4367,9 @@ optget(register char** argv, const char*
*/
opt_info.assignment = 0;
- num = 1;
- w = v = 0;
- x = 0;
+ nov = no = num = 1;
+ e = w = v = 0;
+ n = x = 0;
for (;;)
{
if (!opt_info.offset)
@@ -5214,7 +5214,7 @@ optget(register char** argv, const char*
if (opt_info.num != LONG_MIN)
opt_info.num = (long)(opt_info.number = num);
- if ((n = *++s == '#') || *s == ':' || w && !nov && v && (optnumber(v, &e, NiL), n = !*e))
+ if ((n = (*++s == '#')) || *s == ':' || w && !nov && v && (optnumber(v, &e, NiL), n = !*e))
{
if (w)
{
--- src/lib/libpp/ppsearch.c
+++ src/lib/libpp/ppsearch.c 2012-03-14 11:40:11.000000000 +0000
@@ -107,6 +107,14 @@ ppmultiple(register struct ppfile* fp, r
* search for file using directories in dp
*/
+#define stupidgcc(flag) \
+({ \
+ char *name = NiL; \
+ if (!(fp->flags & INC_MEMBER(flag)) && (xp = fp->bound[flag])) \
+ name = xp->name; \
+ name; \
+})
+
static int
search(register struct ppfile* fp, register struct ppdirs* dp, int type, int flags)
{
@@ -146,10 +154,10 @@ search(register struct ppfile* fp, regis
(fp->flags & INC_BOUND(INC_STANDARD)) ? "STANDARD|" : "",
dp ? (dp->index == INC_PREFIX ? "pre" : dp->index == INC_LOCAL ? "lcl" : dp->index == INC_VENDOR ? "vnd" : "std") : NiL,
dp ? dp->name : NiL,
- !(fp->flags & INC_MEMBER(INC_PREFIX)) && fp->bound[INC_PREFIX] ? fp->bound[INC_PREFIX]->name : NiL,
- !(fp->flags & INC_MEMBER(INC_LOCAL)) && fp->bound[INC_LOCAL] ? fp->bound[INC_LOCAL]->name : NiL,
- !(fp->flags & INC_MEMBER(INC_VENDOR)) && fp->bound[INC_VENDOR] ? fp->bound[INC_VENDOR]->name : NiL,
- !(fp->flags & INC_MEMBER(INC_STANDARD)) && (xp = fp->bound[INC_STANDARD]) ? xp->name : NiL,
+ stupidgcc(INC_PREFIX),
+ stupidgcc(INC_LOCAL),
+ stupidgcc(INC_VENDOR),
+ stupidgcc(INC_STANDARD),
error_info.file
));
if (flags & SEARCH_HOSTED)
@@ -578,6 +586,8 @@ if (pp.test & 0x0010) error(1, "SEARCH#%
return -1;
}
+#undef stupidgcc
+
/*
* search for an include file
* if (flags&SEARCH_INCLUDE) then