Re: Question about ECPGset_noind_null() and ECPGis_noind_null()

From: Boszormenyi Zoltan <zb(at)cybertec(dot)at>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Michael Meskes <meskes(at)postgresql(dot)org>, pgsql-hackers(at)postgresql(dot)org, Hans-Juergen Schoenig <hs(at)cybertec(dot)at>
Subject: Re: Question about ECPGset_noind_null() and ECPGis_noind_null()
Date: 2009-11-19 20:36:29
Message-ID: 4B05AC4D.6070705@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Boszormenyi Zoltan írta:
> Tom Lane írta:
>
>> Boszormenyi Zoltan <zb(at)cybertec(dot)at> writes:
>>
>>
>>> for (; length > 0 && ptr[--length] == 0xff;);
>>>
>>>
>>
>>
>>> I suspect that GCC does the "--length" after checking
>>> "length > 0" and before checking the "ptr[...] == 0xff",
>>> but HP CC does it before checking "length > 0".
>>>
>>>
>> If it does, that is *unquestionably* a bug in HP's CC and should be
>> reported to them.
>>
>
> Is it *really* a bug? I recalled a comment from my C teacher
> in '92 or '93 about this exact issue, that the prefix/postfix
> increment/decrement operators are executed in the
> statement in an implementation-defined order, i.e. they
> can be freely reordered or placed anywhere in the
> expression, provided that the postfix operator's evaluation
>
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Above is the prefix case obviously...

> is earlier than the usage of the variable it's used on and
> evaluation is later than the variable usage in the postfix case.
> This means that their usage has to be minimized so the
> result is unambiguous.

--
Bible has answers for everything. Proof:
"But let your communication be, Yea, yea; Nay, nay: for whatsoever is more
than these cometh of evil." (Matthew 5:37) - basics of digital technology.
"May your kingdom come" - superficial description of plate tectonics

----------------------------------
Zoltán Böszörményi
Cybertec Schönig & Schönig GmbH
http://www.postgresql.at/

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2009-11-19 20:38:53 Re: Question about ECPGset_noind_null() and ECPGis_noind_null()
Previous Message Boszormenyi Zoltan 2009-11-19 20:32:51 Re: Question about ECPGset_noind_null() and ECPGis_noind_null()