The following line of code is accepted: typedef double AlignedDoubleType __attribute__((aligned(16)));
However, if I replace 'double' with a template parameter inside a template function, then I get the following error message: error: alignment of array elements is greater than element size I think that the template version of the typedef should be allowed also, as it is in 4.4. -- Summary: 4.5 regression: 16-byte aligned double is disallowed only in templates Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: bredelin at ucla dot edu GCC build triplet: x86_64-linux-gnu GCC host triplet: x86_64-linux-gnu GCC target triplet: x86_64-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42555