http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55365
--- Comment #1 from Jason <jasongross9+bugzilla at gmail dot com> 2012-11-17 16:04:49 UTC --- Note that icpc gives me the error message "error: a designator into a template-dependent type is not allowed" on code similar to this, which seems like it might be related. The code snipped (inside the Foo class) that icpc gives me this error message on is static constexpr arr_or_b make_init_data(T &&c) { return { .b = c }; }