I upgraded my Xcode to 4.2 following the iOS 5 release and then compiled svn 1.7.0 for MacPorts, which updated this weekend.
The new clang compiler generates many more, higher level warnings then I've seen before, which is pretty cool. Definitely worth upgrading your Xcode and switching to clang. Here's the warnings in the 1.7.0 build, not including deprecation warnings. subversion/libsvn_delta/compose_delta.c:707:31: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare] if (ptn_overlap >= 0) ~~~~~~~~~~~ ^ ~ There's a comment for this in our code: /* ### FIXME: ptn_overlap is unsigned, so the if() condition below is always true! Either it should be '> 0', or the code block should be unconditional. See also r842362. */ subversion/libsvn_client/merge.c:4565:9: warning: if statement has empty body [- Wempty-body] ; ^ This is this snippet: if (nbr_skips < notify_b->nbr_notifications) /* ### Use RANGELIST as the mergeinfo for all children of ### this path which were not also explicitly ### skipped? */ ; subversion/libsvn_wc/copy.c:618:13: warning: 6 enumeration values not handled in switch: 'svn_wc__db_status_normal', 'svn_wc__db_status_added', 'svn_wc__db_stat us_moved_here'... [-Wswitch-enum] switch (src_status) ^ subversion/libsvn_diff/diff_file.c:2138:3: warning: data argument not used by format string [-Wformat-extra-args] SVN_ERR(svn_stream_printf(btn->output_stream, btn->pool, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./subversion/include/svn_error.h:303:35: note: instantiated from: svn_error_t *svn_err__temp = (expr); \ ^ subversion/libsvn_diff/diff_file.c:2143:49: note: instantiated from: modified_start + 1, modified_length)); ^ This looks ok: SVN_ERR(svn_stream_printf(btn->output_stream, btn->pool, (modified_length == 1 ? "%s (%" APR_OFF_T_FMT ")" : "%s (%" APR_OFF_T_FMT ",%" APR_OFF_T_FMT ")"), btn->conflict_modified, modified_start + 1, modified_length)); There's a bunch more of these warnings. So all in all, svn 1.7.0 comes out pretty good. None of the above warnings are a bug, even the switch one from a cursory reading. It's nice to see a compiler warn about these. Blair