From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21796 invoked by alias); 23 Jun 2009 12:39:27 -0000 Received: (qmail 21757 invoked by uid 48); 23 Jun 2009 12:39:16 -0000 Date: Tue, 23 Jun 2009 12:39:00 -0000 Subject: [Bug c++/40527] New: #pragma pack([push,] n) should be coded in the signature X-Bugzilla-Reason: CC Message-ID: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "gerolf dot wendland at nsn dot com" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2009-06/txt/msg01694.txt.bz2 I do regard the alignment settings for structs, unions, classes as important as the signature of functions. compilation of structs in the scope of different #pragma pack([push], n) produces errors that are hard to understand. The linker could produce errors or warnings when combining compilation units with symbols that differ only in their memory alignment. The compiler's warning about impaired #pragma pack(push,n) #pragma pack(pop) doesn't help in such cases. -- Summary: #pragma pack([push,] n) should be coded in the signature Product: gcc Version: 4.3.1 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: gerolf dot wendland at nsn dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40527