From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1704 invoked by alias); 13 Dec 2006 12:09:24 -0000 Received: (qmail 1661 invoked by uid 48); 13 Dec 2006 12:09:11 -0000 Date: Wed, 13 Dec 2006 12:09:00 -0000 Message-ID: <20061213120911.1660.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug target/30148] parameter passing bug In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "lindig at cs dot uni-sb dot de" 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: 2006-12/txt/msg01158.txt.bz2 ------- Comment #2 from lindig at cs dot uni-sb dot de 2006-12-13 12:09 ------- Created an attachment (id=12794) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12794&action=view) preprocessed file to reproduce the bug. I have now attached the file that reproduces the bug to make everyone's life easier. The bug can be summarized as follows: when a struct (b14) is passed by value as a vararg, it may be garbled. In this case, the struct is passed as the second vararg (b14) where the first one (b13) is an empty struct {}. This could confuse the code that implements the calling convention. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30148