Export (0) Print
Expand All
Expand Minimize
1 out of 4 rated this helpful - Rate this topic

Compiler Warning (level 3) C4316

Visual Studio 2013
Object allocated on the heap may not be aligned for this type.

An over-aligned object allocated by using operator new may not have the specified alignment. Override operator new and operator delete for over-aligned types so that they use the aligned allocation routines—for example, _aligned_malloc and _aligned_free. The following sample generates C4316:

// C4316.cpp
// Test: cl /W3 /c C4316.cpp

__declspec(align(32)) struct S {}; // C4324
 
int main() {
    new S; // C4316
}
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.