------- Additional Comments From lyuzhou at 21cn dot com 2005-06-11 14:52 ------- The sources file MUST ".cpp" file, not ".c" file. Must compile with BOTH two flags: "-march=i386 -mrtd".
Known to work:mingw gcc 3.3.3 Known to fail:mingw gcc 3.4.2 3.4.3 3.4.4 precompile file: ========= main.ii (begin) ========== # 1 "main.cpp" # 1 "<built-in>" # 1 "<command line>" # 1 "main.cpp" extern "C" void __attribute__((__cdecl__)) _assert (const char*, const char*, int); struct st_t { int m_i; char m_ch[260]; }; void foo(int *pInt, struct st_t st) { ((*pInt == 123) ? (void)0 : _assert("*pInt == 123", "main.cpp", 11)); } int main() { int i = 123; struct st_t st; st.m_i = 1; st.m_ch[0] = 0; foo(&i, st); return 0; } ========= main.ii (end) ========== -- What |Removed |Added ---------------------------------------------------------------------------- Known to fail| |3.4.2 3.4.3 3.4.4 Known to work| |3.3.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22017