[postgis-users] 1.3.3 Pre-Release Notice

Mark Cave-Ayland mark.cave-ayland at siriusit.co.uk
Wed Apr 9 11:46:57 PDT 2008


>>  if ( sr_id && strcmp(sr_id,"-1") ) printf("SRID=%s;", sr_id);
>>
>>  I have a very strong feeling that evaluation order in C is unspecified,
>> rather
>>  than being from left to right; so for example the compiler could decide
>> to
>>  generate code that evaluates the strcmp() first, in which case it would
>>  segfault on a NULL :( I think you would need to re-write something like
>> this:
>
> Should be fine: man -S7 operator

Not necessarily, since associativity does not specify evaluation order:
see http://www.dcs.bbk.ac.uk/~roger/cpp/week2.htm for an example of this.
Associativity only comes into play if there are more than two operands
within an expression.

> I'll have a look at that, how is the estimated_extent investigation
> coming?

Yeah, I managed to fix the one place in estimated_extent(), however there
are a couple of other places that need a fix. The problem is again that we
are poking values directly into ArrayTypes rather than using the
PostgreSQL supplied macros for accessing arrays :(

I did have something ready to commit first thing this morning, but my
laptop decided to blow up today - as I'm heading out now, I'll see if I
can come up with something later this evening on my home machine.


ATB,

Mark.

-- 
Mark Cave-Ayland
Sirius Corporation - The Open Source Experts
http://www.siriusit.co.uk
T: +44 870 608 0063




More information about the postgis-users mailing list