X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Fbase%2FMKlib_gen.sh;h=c7877bfcd863d325bc4292fa3c87cff8364cfc37;hp=830e4dc09b201dc773f45ef85131f1d2ded090b4;hb=e33150410925e7858dacebb585a9bd90db683d86;hpb=a20e6eb464be80b9cd8cae7ce925d27fe9c209ed;ds=sidebyside diff --git a/ncurses/base/MKlib_gen.sh b/ncurses/base/MKlib_gen.sh index 830e4dc0..c7877bfc 100755 --- a/ncurses/base/MKlib_gen.sh +++ b/ncurses/base/MKlib_gen.sh @@ -2,7 +2,7 @@ # # MKlib_gen.sh -- generate sources from curses.h macro definitions # -# ($Id: MKlib_gen.sh,v 1.57 2017/08/12 12:22:06 tom Exp $) +# ($Id: MKlib_gen.sh,v 1.60 2017/12/09 22:27:41 tom Exp $) # ############################################################################## # Copyright (c) 1998-2017,2017 Free Software Foundation, Inc. # @@ -242,6 +242,9 @@ $0 !~ /^P_/ { break; } } + if (using == "implemented") { + printf "#undef %s\n", $myfunc; + } print $0; print "{"; argcount = 1; @@ -274,6 +277,11 @@ $0 !~ /^P_/ { dotrace = 0; } + do_getstr = 0; + if ($myfunc ~ /get[n]?str/) { + do_getstr = 1; + } + call = "@@T((T_CALLED(\"" args = "" comma = "" @@ -310,7 +318,11 @@ $0 !~ /^P_/ { call = call "%s" } else if (pointer) { if ( argtype == "char" ) { - call = call "%s" + if (do_getstr) { + call = call "%p" + } else { + call = call "%s" + } comma = comma "_nc_visbuf2(" num "," pointer = 0; } else { @@ -360,7 +372,7 @@ $0 !~ /^P_/ { call = call ")); " if (dotrace) - printf "%s", call + printf "%s\n\t@@", call if (match($0, "^void")) { call = "" @@ -399,7 +411,7 @@ EOF1 cat >$AW2 <