Compiler Warning (level 3) C4159
Collapse the table of content
Expand the table of content
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer

Compiler Warning (level 3) C4159

#pragma pragma(pop,...) : has popped previously pushed identifier 'identifier'

Your source code contains a push instruction with an identifier for a pragma followed by a pop instruction without an identifier. As a result, identifier is popped, and subsequent uses of identifier may cause unexpected behavior.

To avoid this warning, give an identifier in the pop instruction. For example:

// C4159.cpp
// compile with: /W3
#pragma pack(push, f)
#pragma pack(pop)   // C4159

// using the identifier resolves the warning
// #pragma pack(pop, f)

int main()
© 2016 Microsoft