drop all deprecated code, you have been warned
This commit is contained in:
parent
2d879f3b79
commit
5b4d0dbbc5
10
Build.sh
10
Build.sh
|
@ -1,5 +1,5 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
srcversion='$MirOS: src/bin/mksh/Build.sh,v 1.542 2012/04/06 23:10:50 tg Exp $'
|
srcversion='$MirOS: src/bin/mksh/Build.sh,v 1.543 2012/04/07 11:19:45 tg Exp $'
|
||||||
#-
|
#-
|
||||||
# Copyright (c) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
|
# Copyright (c) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
|
||||||
# 2011, 2012
|
# 2011, 2012
|
||||||
|
@ -1268,9 +1268,9 @@ ac_ifcpp 'ifdef MKSH_ASSUME_UTF8' isset_MKSH_ASSUME_UTF8 '' \
|
||||||
ac_ifcpp 'ifdef MKSH_CONSERVATIVE_FDS' isset_MKSH_CONSERVATIVE_FDS '' \
|
ac_ifcpp 'ifdef MKSH_CONSERVATIVE_FDS' isset_MKSH_CONSERVATIVE_FDS '' \
|
||||||
'if traditional/conservative fd use is requested' && \
|
'if traditional/conservative fd use is requested' && \
|
||||||
check_categories="$check_categories convfds"
|
check_categories="$check_categories convfds"
|
||||||
ac_ifcpp 'ifdef MKSH_DISABLE_DEPRECATED' isset_MKSH_DISABLE_DEPRECATED '' \
|
#ac_ifcpp 'ifdef MKSH_DISABLE_DEPRECATED' isset_MKSH_DISABLE_DEPRECATED '' \
|
||||||
"if deprecated features are to be omitted" && \
|
# "if deprecated features are to be omitted" && \
|
||||||
check_categories="$check_categories nodeprecated"
|
# check_categories="$check_categories nodeprecated"
|
||||||
|
|
||||||
#
|
#
|
||||||
# Environment: headers
|
# Environment: headers
|
||||||
|
@ -1392,7 +1392,7 @@ else
|
||||||
#define EXTERN
|
#define EXTERN
|
||||||
#define MKSH_INCLUDES_ONLY
|
#define MKSH_INCLUDES_ONLY
|
||||||
#include "sh.h"
|
#include "sh.h"
|
||||||
__RCSID("$MirOS: src/bin/mksh/Build.sh,v 1.542 2012/04/06 23:10:50 tg Exp $");
|
__RCSID("$MirOS: src/bin/mksh/Build.sh,v 1.543 2012/04/07 11:19:45 tg Exp $");
|
||||||
int main(void) { printf("Hello, World!\n"); return (0); }
|
int main(void) { printf("Hello, World!\n"); return (0); }
|
||||||
EOF
|
EOF
|
||||||
case $cm in
|
case $cm in
|
||||||
|
|
13
Makefile
13
Makefile
|
@ -1,4 +1,4 @@
|
||||||
# $MirOS: src/bin/mksh/Makefile,v 1.96 2012/03/27 23:13:41 tg Exp $
|
# $MirOS: src/bin/mksh/Makefile,v 1.97 2012/04/07 11:19:46 tg Exp $
|
||||||
#-
|
#-
|
||||||
# Copyright (c) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
|
# Copyright (c) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
|
||||||
# 2011, 2012
|
# 2011, 2012
|
||||||
|
@ -41,14 +41,13 @@ CPPFLAGS+= -DMKSH_ASSUME_UTF8 -DMKSH_DISABLE_DEPRECATED \
|
||||||
-DHAVE_CAN_INT8TYPE=1 -DHAVE_CAN_UCBINT8=1 -DHAVE_RLIM_T=1 \
|
-DHAVE_CAN_INT8TYPE=1 -DHAVE_CAN_UCBINT8=1 -DHAVE_RLIM_T=1 \
|
||||||
-DHAVE_SIG_T=1 -DHAVE_SYS_SIGNAME=1 -DHAVE_SYS_SIGLIST=1 \
|
-DHAVE_SIG_T=1 -DHAVE_SYS_SIGNAME=1 -DHAVE_SYS_SIGLIST=1 \
|
||||||
-DHAVE_STRSIGNAL=0 -DHAVE_FLOCK=1 -DHAVE_LOCK_FCNTL=1 \
|
-DHAVE_STRSIGNAL=0 -DHAVE_FLOCK=1 -DHAVE_LOCK_FCNTL=1 \
|
||||||
-DHAVE_MMAP=1 -DHAVE_GETRUSAGE=1 -DHAVE_KILLPG=1 \
|
-DHAVE_GETRUSAGE=1 -DHAVE_KILLPG=1 -DHAVE_MKNOD=0 \
|
||||||
-DHAVE_MKNOD=0 -DHAVE_MKSTEMP=1 -DHAVE_NICE=1 -DHAVE_REVOKE=1 \
|
-DHAVE_MKSTEMP=1 -DHAVE_MMAP=1 -DHAVE_NICE=1 -DHAVE_REVOKE=1 \
|
||||||
-DHAVE_SETLOCALE_CTYPE=0 -DHAVE_LANGINFO_CODESET=0 \
|
-DHAVE_SETLOCALE_CTYPE=0 -DHAVE_LANGINFO_CODESET=0 \
|
||||||
-DHAVE_SELECT=1 -DHAVE_SETRESUGID=1 -DHAVE_SETGROUPS=1 \
|
-DHAVE_SELECT=1 -DHAVE_SETRESUGID=1 -DHAVE_SETGROUPS=1 \
|
||||||
-DHAVE_STRCASESTR=1 -DHAVE_STRLCPY=1 -DHAVE_FLOCK_DECL=1 \
|
-DHAVE_STRLCPY=1 -DHAVE_FLOCK_DECL=1 -DHAVE_REVOKE_DECL=1 \
|
||||||
-DHAVE_REVOKE_DECL=1 -DHAVE_SYS_SIGLIST_DECL=1 \
|
-DHAVE_SYS_SIGLIST_DECL=1 -DHAVE_PERSISTENT_HISTORY=1 \
|
||||||
-DHAVE_PERSISTENT_HISTORY=1 -DHAVE_SILENT_IDIVWRAPV=0 \
|
-DHAVE_SILENT_IDIVWRAPV=0 -DMKSH_BUILD_R=409
|
||||||
-DMKSH_BUILD_R=409
|
|
||||||
CPPFLAGS+= -D${${PROG:L}_tf:C/(Mir${MAN:E}{0,1}){2}/4/:S/x/mksh_BUILD/:U}
|
CPPFLAGS+= -D${${PROG:L}_tf:C/(Mir${MAN:E}{0,1}){2}/4/:S/x/mksh_BUILD/:U}
|
||||||
COPTS+= -std=c99 -Wall
|
COPTS+= -std=c99 -Wall
|
||||||
.endif
|
.endif
|
||||||
|
|
126
check.t
126
check.t
|
@ -1,4 +1,4 @@
|
||||||
# $MirOS: src/bin/mksh/check.t,v 1.530 2012/04/06 12:30:40 tg Exp $
|
# $MirOS: src/bin/mksh/check.t,v 1.531 2012/04/07 11:19:47 tg Exp $
|
||||||
# $OpenBSD: bksl-nl.t,v 1.2 2001/01/28 23:04:56 niklas Exp $
|
# $OpenBSD: bksl-nl.t,v 1.2 2001/01/28 23:04:56 niklas Exp $
|
||||||
# $OpenBSD: history.t,v 1.5 2001/01/28 23:04:56 niklas Exp $
|
# $OpenBSD: history.t,v 1.5 2001/01/28 23:04:56 niklas Exp $
|
||||||
# $OpenBSD: read.t,v 1.3 2003/03/10 03:48:16 david Exp $
|
# $OpenBSD: read.t,v 1.3 2003/03/10 03:48:16 david Exp $
|
||||||
|
@ -29,7 +29,7 @@
|
||||||
# http://www.freebsd.org/cgi/cvsweb.cgi/src/tools/regression/bin/test/regress.sh?rev=HEAD
|
# http://www.freebsd.org/cgi/cvsweb.cgi/src/tools/regression/bin/test/regress.sh?rev=HEAD
|
||||||
|
|
||||||
expected-stdout:
|
expected-stdout:
|
||||||
@(#)MIRBSD KSH R40 2012/03/29
|
@(#)MIRBSD KSH R40 2012/04/07
|
||||||
description:
|
description:
|
||||||
Check version of shell.
|
Check version of shell.
|
||||||
stdin:
|
stdin:
|
||||||
|
@ -3422,7 +3422,6 @@ expected-stdout:
|
||||||
name: integer-base-err-1
|
name: integer-base-err-1
|
||||||
description:
|
description:
|
||||||
Can't have 0 base (causes shell to exit)
|
Can't have 0 base (causes shell to exit)
|
||||||
category: nodeprecated
|
|
||||||
expected-exit: e != 0
|
expected-exit: e != 0
|
||||||
stdin:
|
stdin:
|
||||||
typeset -i i
|
typeset -i i
|
||||||
|
@ -3432,19 +3431,6 @@ stdin:
|
||||||
expected-stderr-pattern:
|
expected-stderr-pattern:
|
||||||
/^.*:.*0#4.*\n$/
|
/^.*:.*0#4.*\n$/
|
||||||
---
|
---
|
||||||
name: integer-base-err-1-deprecated
|
|
||||||
description:
|
|
||||||
Can't have 0 base (causes shell to exit)
|
|
||||||
category: !nodeprecated
|
|
||||||
expected-exit: e != 0
|
|
||||||
stdin:
|
|
||||||
typeset -i i
|
|
||||||
i=3
|
|
||||||
i=0#4
|
|
||||||
echo $i
|
|
||||||
expected-stderr-pattern:
|
|
||||||
/^.*octal is deprecated\n.*:.*0#4.*\n$/
|
|
||||||
---
|
|
||||||
name: integer-base-err-2
|
name: integer-base-err-2
|
||||||
description:
|
description:
|
||||||
Can't have multiple bases in a 'constant' (causes shell to exit)
|
Can't have multiple bases in a 'constant' (causes shell to exit)
|
||||||
|
@ -3640,22 +3626,10 @@ expected-stdout:
|
||||||
64
|
64
|
||||||
64
|
64
|
||||||
---
|
---
|
||||||
name: integer-base-check-flat-posix
|
name: integer-base-check-flat
|
||||||
description:
|
|
||||||
Check behaviour of POSuX bases
|
|
||||||
category: !nodeprecated
|
|
||||||
stdin:
|
|
||||||
echo :$((10)).$((010)).$((0x10)).
|
|
||||||
expected-stdout:
|
|
||||||
:10.8.16.
|
|
||||||
expected-stderr-pattern:
|
|
||||||
/octal is deprecated/
|
|
||||||
---
|
|
||||||
name: integer-base-check-flat-right
|
|
||||||
description:
|
description:
|
||||||
Check behaviour does not match POSuX, because a not type-safe
|
Check behaviour does not match POSuX, because a not type-safe
|
||||||
scripting language has *no* business interpreting "010" as octal
|
scripting language has *no* business interpreting "010" as octal
|
||||||
category: nodeprecated
|
|
||||||
stdin:
|
stdin:
|
||||||
echo :$((10)).$((010)).$((0x10)).
|
echo :$((10)).$((010)).$((0x10)).
|
||||||
expected-stdout:
|
expected-stdout:
|
||||||
|
@ -9429,99 +9403,6 @@ expected-stdout:
|
||||||
11 0
|
11 0
|
||||||
12 0
|
12 0
|
||||||
---
|
---
|
||||||
name: event-subst-1a
|
|
||||||
description:
|
|
||||||
Check that '!' substitution in interactive mode works
|
|
||||||
category: !smksh,!nodeprecated
|
|
||||||
file-setup: file 755 "falsetto"
|
|
||||||
#! /bin/sh
|
|
||||||
echo molto bene
|
|
||||||
exit 42
|
|
||||||
file-setup: file 755 "!false"
|
|
||||||
#! /bin/sh
|
|
||||||
echo si
|
|
||||||
need-ctty: yes
|
|
||||||
arguments: !-i!
|
|
||||||
stdin:
|
|
||||||
export PATH=.:$PATH
|
|
||||||
falsetto
|
|
||||||
echo yeap
|
|
||||||
!false
|
|
||||||
expected-exit: 42
|
|
||||||
expected-stdout:
|
|
||||||
molto bene
|
|
||||||
yeap
|
|
||||||
molto bene
|
|
||||||
expected-stderr-pattern:
|
|
||||||
/.*/
|
|
||||||
---
|
|
||||||
name: event-subst-1b
|
|
||||||
description:
|
|
||||||
Check that '!' substitution in interactive mode works
|
|
||||||
even when a space separates it from the search command,
|
|
||||||
which is not what GNU bash provides but required for the
|
|
||||||
other regression tests below to check
|
|
||||||
category: !smksh,!nodeprecated
|
|
||||||
file-setup: file 755 "falsetto"
|
|
||||||
#! /bin/sh
|
|
||||||
echo molto bene
|
|
||||||
exit 42
|
|
||||||
file-setup: file 755 "!"
|
|
||||||
#! /bin/sh
|
|
||||||
echo si
|
|
||||||
need-ctty: yes
|
|
||||||
arguments: !-i!
|
|
||||||
stdin:
|
|
||||||
export PATH=.:$PATH
|
|
||||||
falsetto
|
|
||||||
echo yeap
|
|
||||||
! false
|
|
||||||
expected-exit: 42
|
|
||||||
expected-stdout:
|
|
||||||
molto bene
|
|
||||||
yeap
|
|
||||||
molto bene
|
|
||||||
expected-stderr-pattern:
|
|
||||||
/.*/
|
|
||||||
---
|
|
||||||
name: event-subst-2
|
|
||||||
description:
|
|
||||||
Check that '!' substitution in interactive mode
|
|
||||||
does not break things
|
|
||||||
category: !smksh,!nodeprecated
|
|
||||||
file-setup: file 755 "falsetto"
|
|
||||||
#! /bin/sh
|
|
||||||
echo molto bene
|
|
||||||
exit 42
|
|
||||||
file-setup: file 755 "!"
|
|
||||||
#! /bin/sh
|
|
||||||
echo si
|
|
||||||
need-ctty: yes
|
|
||||||
arguments: !-i!
|
|
||||||
env-setup: !ENV=./Env!
|
|
||||||
file-setup: file 644 "Env"
|
|
||||||
PS1=X
|
|
||||||
stdin:
|
|
||||||
export PATH=.:$PATH
|
|
||||||
falsetto
|
|
||||||
echo yeap
|
|
||||||
!false
|
|
||||||
echo meow
|
|
||||||
! false
|
|
||||||
echo = $?
|
|
||||||
if
|
|
||||||
! false; then echo foo; else echo bar; fi
|
|
||||||
expected-stdout:
|
|
||||||
molto bene
|
|
||||||
yeap
|
|
||||||
molto bene
|
|
||||||
meow
|
|
||||||
molto bene
|
|
||||||
= 42
|
|
||||||
foo
|
|
||||||
expected-stderr-pattern:
|
|
||||||
/.*/
|
|
||||||
---
|
|
||||||
name: event-subst-3
|
name: event-subst-3
|
||||||
description:
|
description:
|
||||||
Check that '!' substitution in noninteractive mode is ignored
|
Check that '!' substitution in noninteractive mode is ignored
|
||||||
|
@ -9554,7 +9435,6 @@ expected-stdout:
|
||||||
name: event-subst-0
|
name: event-subst-0
|
||||||
description:
|
description:
|
||||||
Check that '!' substitution in interactive mode is ignored
|
Check that '!' substitution in interactive mode is ignored
|
||||||
category: nodeprecated
|
|
||||||
need-ctty: yes
|
need-ctty: yes
|
||||||
arguments: !-i!
|
arguments: !-i!
|
||||||
file-setup: file 755 "falsetto"
|
file-setup: file 755 "falsetto"
|
||||||
|
|
21
lex.c
21
lex.c
|
@ -22,7 +22,7 @@
|
||||||
|
|
||||||
#include "sh.h"
|
#include "sh.h"
|
||||||
|
|
||||||
__RCSID("$MirOS: src/bin/mksh/lex.c,v 1.160 2012/03/31 17:29:59 tg Exp $");
|
__RCSID("$MirOS: src/bin/mksh/lex.c,v 1.161 2012/04/07 11:19:49 tg Exp $");
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* states while lexing word
|
* states while lexing word
|
||||||
|
@ -1440,25 +1440,6 @@ getsc_line(Source *s)
|
||||||
alarm(0);
|
alarm(0);
|
||||||
}
|
}
|
||||||
cp = Xstring(s->xs, xp);
|
cp = Xstring(s->xs, xp);
|
||||||
#if !defined(MKSH_SMALL) && !defined(MKSH_DISABLE_DEPRECATED)
|
|
||||||
if (interactive && *cp == '!' && cur_prompt == PS1) {
|
|
||||||
int linelen;
|
|
||||||
|
|
||||||
linelen = Xlength(s->xs, xp);
|
|
||||||
XcheckN(s->xs, xp, Zfc_e_dash + /* NUL */ 1);
|
|
||||||
/* reload after potential realloc */
|
|
||||||
cp = Xstring(s->xs, xp);
|
|
||||||
/* change initial '!' into space */
|
|
||||||
*cp = ' ';
|
|
||||||
/* NUL terminate the current string */
|
|
||||||
*xp = '\0';
|
|
||||||
/* move the actual string forward */
|
|
||||||
memmove(cp + Zfc_e_dash, cp, linelen + /* NUL */ 1);
|
|
||||||
xp += Zfc_e_dash;
|
|
||||||
/* prepend it with "fc -e -" */
|
|
||||||
memcpy(cp, Tfc_e_dash, Zfc_e_dash);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
s->start = s->str = cp;
|
s->start = s->str = cp;
|
||||||
strip_nuls(Xstring(s->xs, xp), Xlength(s->xs, xp));
|
strip_nuls(Xstring(s->xs, xp), Xlength(s->xs, xp));
|
||||||
/* Note: if input is all nulls, this is not eof */
|
/* Note: if input is all nulls, this is not eof */
|
||||||
|
|
19
mksh.1
19
mksh.1
|
@ -1,4 +1,4 @@
|
||||||
.\" $MirOS: src/bin/mksh/mksh.1,v 1.282 2012/03/23 23:25:27 tg Exp $
|
.\" $MirOS: src/bin/mksh/mksh.1,v 1.283 2012/04/07 11:19:49 tg Exp $
|
||||||
.\" $OpenBSD: ksh.1,v 1.141 2011/09/03 22:59:08 jmc Exp $
|
.\" $OpenBSD: ksh.1,v 1.141 2011/09/03 22:59:08 jmc Exp $
|
||||||
.\"-
|
.\"-
|
||||||
.\" Copyright © 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
|
.\" Copyright © 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
|
||||||
|
@ -72,7 +72,7 @@
|
||||||
.\" with -mandoc, it might implement .Mx itself, but we want to
|
.\" with -mandoc, it might implement .Mx itself, but we want to
|
||||||
.\" use our own definition. And .Dd must come *first*, always.
|
.\" use our own definition. And .Dd must come *first*, always.
|
||||||
.\"
|
.\"
|
||||||
.Dd $Mdocdate: March 23 2012 $
|
.Dd $Mdocdate: April 7 2012 $
|
||||||
.\"
|
.\"
|
||||||
.\" Check which macro package we use
|
.\" Check which macro package we use
|
||||||
.\"
|
.\"
|
||||||
|
@ -2480,14 +2480,14 @@ is a decimal integer specifying the base, and
|
||||||
.Ar number
|
.Ar number
|
||||||
is a number in the specified base.
|
is a number in the specified base.
|
||||||
Additionally, base-16 integers may be specified by prefixing them with
|
Additionally, base-16 integers may be specified by prefixing them with
|
||||||
.Sq 0x Pq case-insensitive
|
.Sq 0x
|
||||||
|
.Pq case-insensitive
|
||||||
in all forms of arithmetic expressions, except as numeric arguments to the
|
in all forms of arithmetic expressions, except as numeric arguments to the
|
||||||
.Ic test
|
.Ic test
|
||||||
built-in command.
|
built-in command.
|
||||||
Base-8 integers may be specified by prefixing them with
|
It is discouraged to prefix numbers with a sole zero
|
||||||
.Sq 0 ,
|
.Pq Sq 0 ,
|
||||||
but this is deprecated and will be removed in the next version of
|
because some shells may interpret them as base-8 integers.
|
||||||
.Nm .
|
|
||||||
As a special
|
As a special
|
||||||
.Nm mksh
|
.Nm mksh
|
||||||
extension, numbers to the base of one are treated as either (8-bit
|
extension, numbers to the base of one are treated as either (8-bit
|
||||||
|
@ -3353,11 +3353,8 @@ The meaning of
|
||||||
and
|
and
|
||||||
.Fl s
|
.Fl s
|
||||||
is identical: re-execute the selected command without invoking an editor.
|
is identical: re-execute the selected command without invoking an editor.
|
||||||
This command is usually accessed with the predefined
|
This command is usually accessed with the predefined:
|
||||||
.Ic alias r=\*(aqfc \-e \-\*(aq
|
.Ic alias r=\*(aqfc \-e \-\*(aq
|
||||||
or (deprecated; will be removed RSN) by prefixing an interactive mode input line with
|
|
||||||
.Sq \&!
|
|
||||||
.Pq wbx extension .
|
|
||||||
.Pp
|
.Pp
|
||||||
.It Ic fg Op Ar job ...
|
.It Ic fg Op Ar job ...
|
||||||
Resume the specified job(s) in the foreground.
|
Resume the specified job(s) in the foreground.
|
||||||
|
|
4
sh.h
4
sh.h
|
@ -152,9 +152,9 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef EXTERN
|
#ifdef EXTERN
|
||||||
__RCSID("$MirOS: src/bin/mksh/sh.h,v 1.544 2012/04/06 15:23:11 tg Exp $");
|
__RCSID("$MirOS: src/bin/mksh/sh.h,v 1.545 2012/04/07 11:19:51 tg Exp $");
|
||||||
#endif
|
#endif
|
||||||
#define MKSH_VERSION "R40 2012/03/29"
|
#define MKSH_VERSION "R40 2012/04/07"
|
||||||
|
|
||||||
/* arithmetic types: C implementation */
|
/* arithmetic types: C implementation */
|
||||||
#if !HAVE_CAN_INTTYPES
|
#if !HAVE_CAN_INTTYPES
|
||||||
|
|
21
var.c
21
var.c
|
@ -27,7 +27,7 @@
|
||||||
#include <sys/sysctl.h>
|
#include <sys/sysctl.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
__RCSID("$MirOS: src/bin/mksh/var.c,v 1.144 2012/03/24 19:13:27 tg Exp $");
|
__RCSID("$MirOS: src/bin/mksh/var.c,v 1.145 2012/04/07 11:19:53 tg Exp $");
|
||||||
|
|
||||||
/*-
|
/*-
|
||||||
* Variables
|
* Variables
|
||||||
|
@ -488,30 +488,11 @@ getint(struct tbl *vp, mksh_ari_t *nump, bool arith)
|
||||||
base = 10;
|
base = 10;
|
||||||
num = 0;
|
num = 0;
|
||||||
neg = 0;
|
neg = 0;
|
||||||
#ifdef MKSH_DISABLE_DEPRECATED
|
|
||||||
if (arith && s[0] == '0' && (s[1] | 0x20) == 'x') {
|
if (arith && s[0] == '0' && (s[1] | 0x20) == 'x') {
|
||||||
s += 2;
|
s += 2;
|
||||||
base = 16;
|
base = 16;
|
||||||
have_base = true;
|
have_base = true;
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
if (arith && *s == '0' && *(s+1)) {
|
|
||||||
s++;
|
|
||||||
if (*s == 'x' || *s == 'X') {
|
|
||||||
s++;
|
|
||||||
base = 16;
|
|
||||||
} else if (vp->flag & ZEROFIL) {
|
|
||||||
while (*s == '0')
|
|
||||||
s++;
|
|
||||||
} else {
|
|
||||||
warningf(true, "interpreting %s[%lu]='%s' as octal"
|
|
||||||
" is deprecated", vp->name,
|
|
||||||
arrayindex(vp), vp->val.s + vp->type);
|
|
||||||
base = 8;
|
|
||||||
}
|
|
||||||
have_base = true;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
while ((c = *s++)) {
|
while ((c = *s++)) {
|
||||||
if (c == '-') {
|
if (c == '-') {
|
||||||
neg++;
|
neg++;
|
||||||
|
|
Loading…
Reference in New Issue