This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/17909] [4.0 Regression] ICE: verifiy_stms failed
- From: "pinskia at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 9 Oct 2004 15:39:34 -0000
- Subject: [Bug middle-end/17909] [4.0 Regression] ICE: verifiy_stms failed
- References: <20041009130530.17909.aj@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-10-09 15:39 -------
The code looks wrong (aka invalid):
__builtin_va_start(list,((const char *)(&(szFmt))));
Fixing the problem to be:
__builtin_va_start(list,szFmt);
Makes the code work which is correct I think.
Someone should correct me if I am wrong.
Reduced testcase:
struct QString {};
typedef __builtin_va_list __gnuc_va_list;
typedef __gnuc_va_list va_list;
QString & sprintf(QString &s,const QString &szFmt,...)
{
va_list list;
__builtin_va_start(list,((const char *)(&(szFmt))));
__builtin_va_end(list);
return s;
}
--
What |Removed |Added
----------------------------------------------------------------------------
Summary|ICE: verifiy_stms failed |[4.0 Regression] ICE:
| |verifiy_stms failed
Target Milestone|--- |4.0.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17909