Okay, fun C question of the month to see if Mike is paying attention.  I'm 
getting a warning I've never seen in current svn:

BDSKTemplateDocument.m:1393: warning: operation on 'i' may be undefined

    keys = [keys subarrayWithRange:NSMakeRange(++i, [keys count] - i)];

Is this because the second argument may use the previous value of i?  A related 
question that bothers me whenever I see it:

id obj;
while (i < 10)
  obj = [array objectAtIndex:++i]; // and what about objectAtIndex:i++ ?

If I understand correctly, all side effects take place before a function is 
called, so this should be safe...right?  Af first glance, both situations seem 
similar to the example in K&R:

printf("%d %d\n", ++n, power(2, n)); /* WRONG */

++n;
printf("%d %d\n", n, power(2,n));

or 

a[i] = i++;

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Bibdesk-develop mailing list
Bibdesk-develop@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bibdesk-develop

Reply via email to