why am I getting "non-aggregate cannot be initialized with initializer list"
EDIT 10/2013: this answer is really old, Apple Clang does support this now.
C++11 Initializer Lists are not yet supported as of Clang 3.0
See the implementation status here: Clang C++11 implementation status
(Your syntax looks correct if only the compiler supported this feature)