~vcs-imports/gawk/master

34 by Arnold D. Robbins
Move to gawk-3.1.6.
1
# Date: Fri, 06 Jan 2006 14:02:17 -0800
2
# From: Paul Eggert <eggert@CS.UCLA.EDU>
3
# Subject: gawk misparses $expr++ if expr ends in ++
4
# To: bug-gawk@gnu.org
5
# Message-id: <87irsxypzq.fsf@penguin.cs.ucla.edu>
6
# 
7
# Here's an example of the problem:
8
# 
9
# $ gawk 'BEGIN{a=3}{print $$a++++}'
10
# gawk: {print $$a++++}
11
# gawk:               ^ syntax error
12
# 
13
# But it's not a syntax error, as the expression conforms to the POSIX
14
# spec: it should be treated like '$($a++)++'.
15
# 
16
# Mawk, Solaris awk (old awk), and Solaris nawk all accept the
17
# expression.  For example:
18
# 
19
# $ echo '3 4 5 6 7 8 9' | nawk 'BEGIN{a=3}{print $$a++++}'
20
# 7
21
# 
22
# This is with gawk 3.1.5 on Solaris 8 (sparc).
23
# 
24
# 
25
# #####################################################################################
26
# This Mail Was Scanned by 012.net AntiVirus Service1- Powered by TrendMicro Interscan
27
# 
28
BEGIN { a = 3 }
29
30
{
31
	print "in:", $0
32
	print "a =", a
33
	print $$a++++
34
	print "out:", $0
35
}