Hi Dave,
GCC's g++ found some errors in the code, for me.
--Eljay
$ g++ -pedantic -W -Wall questionable.cpp question.cpp: In function `void foo()': question.cpp:7: error: ISO C++ forbids variable-size array `buf' question.cpp: In function `int main(int, char**)': question.cpp:22: warning: unused parameter `int ac' question.cpp:22: warning: unused parameter `char**av'
$ g++ --version g++ (GCC) 3.3.1 (cygming special) Copyright (C) 2003 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.