Here are what IMO are the important warnings from FreeBSD-4.8, gcc version
2.95.4 20020320

gcc -fPIC -g -O2 -Wall -fno-defer-pop -fno-omit-frame-pointer -I. -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0/ext/dl -DHAVE_DLFCN_H -DHAVE_DLOPEN -DHAVE_DLCLOSE -DHAVE_DLSYM -DHAVE_DLERROR  -I. -c dl.c
dl.c: In function `rb_ary_to_ptr':
dl.c:522: warning: `ptr' might be used uninitialized in this function
[I reckon it should be initialised to NULL]

gcc -fPIC -DHAVE_GETADDRINFO -DHAVE_SA_LEN -DHAVE_SOCKADDR_STORAGE -DHAVE_SIN_LEN -DINET6 -g -O2 -Wall -DENABLE_IPV6 -I. -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0/ext/socket -DHAVE_NETINET_TCP_H -DHAVE_NETINET_UDP_H -DHAVE_ST_MSG_CONTROL -DHAVE_GETADDRINFO -DHAVE_GETNAMEINFO -DHAVE_SYS_UN_H -DHAVE_SYS_UIO_H -DHAVE_SOCKET -DHAVE_GETHOSTNAME -c socket.c
socket.c: In function `tcp_s_gethostbyname':
socket.c:1095: warning: `size' might be used uninitialized in this function
[fixed already I think]

And here are some missing #include's, plus a couple of possible missing
initialisations:

gcc -g -O2 -Wall -I. -I. -c regex.c
regex.c: In function `ruby_re_compile_pattern':
regex.c:1472: warning: implicit declaration of function `rb_warn'

gcc -fPIC -g -O2 -Wall -I. -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0/ext/pty -DHAVE_SETRESUID -DHAVE_LIBUTIL_H -DHAVE_OPENPTY -c pty.c
pty.c: In function `pty_finalize_syswait':
pty.c:304: warning: implicit declaration of function `rb_detach_process'

gcc -fPIC -g -O2 -Wall -DREADLINE_40_OR_LATER -DREADLINE_21_OR_LATER -I. -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0/ext/readline -DHAVE_READLINE_READLINE_H -DHAVE_READLINE_HISTORY_H -DHAVE_RL_CLEANUP_AFTER_SIGNAL -c readline.c
readline.c: In function `readline_readline':
readline.c:51: warning: implicit declaration of function `isatty'

gcc -fPIC -g -O2 -Wall -I. -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0/ext/syck -DHAVE_ST_H -c handler.c
handler.c: In function `syck_add_transfer':
handler.c:109: warning: implicit declaration of function `free'
handler.c: In function `syck_xprivate':
handler.c:125: warning: implicit declaration of function `malloc'
handler.c:127: warning: implicit declaration of function `strcat'
handler.c:128: warning: implicit declaration of function `strncat'
gcc -fPIC -g -O2 -Wall -I. -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0/ext/syck -DHAVE_ST_H -c node.c
node.c: In function `syck_alloc_node':
node.c:20: warning: implicit declaration of function `malloc'
node.c: In function `syck_free_node':
node.c:35: warning: implicit declaration of function `free'
node.c: In function `syck_str_blow_away_commas':
node.c:124: warning: implicit declaration of function `memmove'
node.c: In function `syck_map_add':
node.c:163: warning: implicit declaration of function `realloc'
gcc -fPIC -g -O2 -Wall -I. -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0/ext/syck -DHAVE_ST_H -c rubyext.c
rubyext.c: In function `rb_syck_mktime':
rubyext.c:160: warning: implicit declaration of function `isdigit'
rubyext.c: In function `rb_syck_parse_handler':
rubyext.c:237: warning: `v' might be used uninitialized in this function
rubyext.c: In function `rb_syck_load_handler':
rubyext.c:314: warning: `obj' might be used uninitialized in this function
rubyext.c: In function `syck_loader_transfer':
rubyext.c:861: warning: `domain' might be used uninitialized in this function
rubyext.c: In function `syck_emitter_simple_write':
rubyext.c:1135: warning: implicit declaration of function `syck_emitter_simple'
gcc -fPIC -g -O2 -Wall -I. -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0/ext/syck -DHAVE_ST_H -c syck.c
syck.c: In function `syck_strndup':
syck.c:35: warning: implicit declaration of function `malloc'
syck.c: In function `syck_free_parser':
syck.c:244: warning: implicit declaration of function `free'
syck.c: In function `syck_parser_add_level':
syck.c:359: warning: implicit declaration of function `realloc'
syck.c: In function `syck_parse':
syck.c:486: warning: implicit declaration of function `yyparse'
gcc -fPIC -g -O2 -Wall -I. -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0 -I/v/build/ruby/ruby-1.8.0/ext/syck -DHAVE_ST_H -c emitter.c
emitter.c: In function `syck_new_emitter':
emitter.c:30: warning: implicit declaration of function `malloc'
emitter.c: In function `syck_st_free_anchors':
emitter.c:58: warning: implicit declaration of function `free'
emitter.c: In function `syck_emitter_flush':
emitter.c:174: warning: unknown conversion type character `Y' in format
[this last one has also been fixed already I think]

Regards,

Brian.