Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 05 Jul 2013 23:52:45 +0200
From:      Steffen "Daode" Nurpmeso <sdaoden@gmail.com>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: bin/180328: awk(1) fails to treat var as integer
Message-ID:  <20130705225245.RVeyMxxz46u4iFEvlVyjjeiM@dietcurd.local>
In-Reply-To: <201307051720.r65HK1tN020084@freefall.freebsd.org>
References:  <201307051720.r65HK1tN020084@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hello.
uwe@netbsd prodded that i dig a bit deeper and so here is the
thing a bit narrowed down.  Sorry.

 | Please, can you minimize the test case?  As far as I understand it
 | should be reducible to the script and to a single line of input that
 | triggers the problem.

Hmmm.

  cat > test.sh <<\!
  printf '1 '; printf "F0000\n" |
  awk '{r2 = r1 = sprintf("%d", "0x" $1); while (r1 <= r2) {print r1; ++r1}}'
  printf '2 '; printf "F0000\n" |
  awk '{r1 = sprintf("%d", "0x" $1); r2 = r1; while (r1 <= r2) {print r1; ++r1}}'
  printf '3 '; printf "F0000\n" |
  awk '{r1 = sprintf("%d", "0x" $1); while (r1 <= 983040) {print r1; ++r1}}'
  printf '4 '; printf "F0000\n" |
  awk '{r1 = sprintf("%d", "0x" $1); r2 = sprintf("%d", "0x" $1); while (r1 <= r2) {print r1; ++r1}}'
  printf '5 '; printf "F0000\n" |
  awk '{r1 = sprintf("%d", "0x" $1); r2 = sprintf("%d", "0x" $1); while (r1 <= r2) {print r1; ++r1}}'
  printf '6 '; printf "F0000 F0001\n" |
  awk '{r1 = sprintf("%d", "0x" $1); r2 = sprintf("%d", "0x" $1); while (r1 < r2) {print r1; ++r1}}'
  sh ./test.sh

results in

  1 983040
  2 983040
  3 983040
  4 983040
  5 983040
  6

So -- indeed.  Sorry.

 | -uwe

--steffen

But

  $ make ucd; ll test/sa/t_props.dat; make ucd-clean;\
  sed -e 40d -i '' tools/t-base.t; make ucd; ll test/sa/t_props.dat

becomes (when i strip all the other messages)

  ucd: ok
  4956 -rw-rw-r--  1 steffen  staff  5071362  5 Jul 23:40 test/sa/t_props.dat
  ucd-clean: ok
  ...
  ucd: ok
  4188 -rw-rw-r--  1 steffen  staff  4284954  5 Jul 23:40 test/sa/t_props.dat



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130705225245.RVeyMxxz46u4iFEvlVyjjeiM>