old pgindent change

Started by Nigel J. Andrewsover 22 years ago4 messageshackers
Jump to latest
#1Nigel J. Andrews
nandrews@investsystems.co.uk

There was a simple change commited in revision 1.47 of pgindent, listed as
being "More updates for GNU indent".

The questions are: why? and surely I can't be the only one whose hit this
problem since November 2001?

On a debian (woody or potato, which ever one had a 2.2 series kernal) using
GNU bash 2.03.0 via /bin/sh (in the pgindent script) I get:

which indent = /usr/local/bin/indent
indent -version = Berkeley indent 5.17

status = 0
You do not appear to have 'indent' installed on your system.

By adding appropiate echo commands before and after the indent -version line in
the script, I've attached my slightly modified version for completeness. I can
never remember the way around the test of $? succeds or fails but the above
experiment plus a look at the near by tests of $? in pgindent seem to show that
there is a problem here.

A simple test of 2.05a.0 on a newer system using:

ls
if [ $? -eq 0 ]; then echo success aaa; fi
lls
if [ $? -eq 0 ]; then echo success bbb; fi

shows that the lls (non-existant executable) status fails the test as expected
while the plain ls status passes.

I'm obviously missing something very significant here or there's a very strange
oddity that's been there, and specifically placed there, for nearly 2 years.

--
Nigel J. Andrews

Attachments:

pgindenttext/plain; charset=US-ASCII; name=pgindentDownload
#2Nigel J. Andrews
nandrews@investsystems.co.uk
In reply to: Nigel J. Andrews (#1)
Re: old pgindent change

On Mon, 22 Sep 2003, Nigel J. Andrews wrote:

There was a simple change commited in revision 1.47 of pgindent, listed as
being "More updates for GNU indent".

The questions are: why? and surely I can't be the only one whose hit this
problem since November 2001?

...

I also had to apply the following change in order to avoid an awk compilation
error:

*** pgindent	Mon Sep 22 23:54:40 2003
--- pgindent.new	Mon Sep 22 23:54:27 2003
***************
*** 65,71 ****
  			    line1 !~ "^typedef" &&
  			    line1 !~ "^extern[ 	][ 	]*\"C\"" &&
  			    line1 !~ "=" &&
! 			    line1 ~ ")")
  				print "int	pgindent_func_no_var_fix;";
  			line1 = line2;
  		}
--- 65,71 ----
  			    line1 !~ "^typedef" &&
  			    line1 !~ "^extern[ 	][ 	]*\"C\"" &&
  			    line1 !~ "=" &&
! 			    line1 ~ "\)")
  				print "int	pgindent_func_no_var_fix;";
  			line1 = line2;
  		}

The changed line was also added in November 2001, in revision 1.48 this time.

awk -W version
mawk 1.3.3 Nov 1996, Copyright (C) Michael D. Brennan

and again with /bin/sh being a link to bash 2.03.0

--
Nigel J. Andrews

#3Bruce Momjian
bruce@momjian.us
In reply to: Nigel J. Andrews (#1)
Re: old pgindent change

I have applied the following patch to allow newer BSD indents to work
with pgindent. Thanks.

---------------------------------------------------------------------------

Nigel J. Andrews wrote:

There was a simple change commited in revision 1.47 of pgindent, listed as
being "More updates for GNU indent".

The questions are: why? and surely I can't be the only one whose hit this
problem since November 2001?

On a debian (woody or potato, which ever one had a 2.2 series kernal) using
GNU bash 2.03.0 via /bin/sh (in the pgindent script) I get:

which indent = /usr/local/bin/indent
indent -version = Berkeley indent 5.17

status = 0
You do not appear to have 'indent' installed on your system.

By adding appropiate echo commands before and after the indent -version line in
the script, I've attached my slightly modified version for completeness. I can
never remember the way around the test of $? succeds or fails but the above
experiment plus a look at the near by tests of $? in pgindent seem to show that
there is a problem here.

A simple test of 2.05a.0 on a newer system using:

ls
if [ $? -eq 0 ]; then echo success aaa; fi
lls
if [ $? -eq 0 ]; then echo success bbb; fi

shows that the lls (non-existant executable) status fails the test as expected
while the plain ls status passes.

I'm obviously missing something very significant here or there's a very strange
oddity that's been there, and specifically placed there, for nearly 2 years.

--
Nigel J. Andrews

Content-Description:

[ Attachment, skipping... ]

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to majordomo@postgresql.org)

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

Attachments:

/bjm/difftext/plainDownload+2-2
#4Bruce Momjian
bruce@momjian.us
In reply to: Nigel J. Andrews (#2)
Re: old pgindent change

Great. Patch applied. Nice to see someone else using pgindent.

---------------------------------------------------------------------------

Nigel J. Andrews wrote:

On Mon, 22 Sep 2003, Nigel J. Andrews wrote:

There was a simple change commited in revision 1.47 of pgindent, listed as
being "More updates for GNU indent".

The questions are: why? and surely I can't be the only one whose hit this
problem since November 2001?

...

I also had to apply the following change in order to avoid an awk compilation
error:

*** pgindent	Mon Sep 22 23:54:40 2003
--- pgindent.new	Mon Sep 22 23:54:27 2003
***************
*** 65,71 ****
line1 !~ "^typedef" &&
line1 !~ "^extern[ 	][ 	]*\"C\"" &&
line1 !~ "=" &&
! 			    line1 ~ ")")
print "int	pgindent_func_no_var_fix;";
line1 = line2;
}
--- 65,71 ----
line1 !~ "^typedef" &&
line1 !~ "^extern[ 	][ 	]*\"C\"" &&
line1 !~ "=" &&
! 			    line1 ~ "\)")
print "int	pgindent_func_no_var_fix;";
line1 = line2;
}

The changed line was also added in November 2001, in revision 1.48 this time.

awk -W version
mawk 1.3.3 Nov 1996, Copyright (C) Michael D. Brennan

and again with /bin/sh being a link to bash 2.03.0

--
Nigel J. Andrews

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to majordomo@postgresql.org)

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073