<div dir="ltr">I think this is bad Twine usage.  Does r206804 fix your problem?</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Apr 21, 2014 at 3:19 PM, G M <span dir="ltr"><<a href="mailto:gmisocpp@gmail.com" target="_blank">gmisocpp@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hi Reid</div><div><br></div><div>It seems that after applying patch 206791 with the above title, I get the errors shown below, where I think I didn't get them before that patch.</div>
<div>I don't know if the patch is incorrect or insufficient or just exposes issues elsewhere now but it seems to effect my mingw/gcc 4,8.2 environment on Windows (which I'm using with/to build clang++) builds, so I thought I'd draw your attention to the error messages in case that helps.</div>

<div><br></div><div>clang is up to date and built from trunk as of right now.</div><div><br></div><div>Thanks</div><div><br>c:\test>clang++ -nostdinc++ -I/libcxx/include mm.cpp<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>

c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:84:17: error: expected ';' after top level<br>      declarator<br>  _CRTIMP FILE *__cdecl __iob_func(void);<br>                ^<br><built-in>:161:24: note: expanded from here<br>

#define __cdecl cdecl__))<br>                       ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:141:7: error: redefinition of 'cdecl__' with a</div>

<div>      different type: 'int' vs 'FILE *' (aka '_iobuf *')<br>  int __cdecl __mingw_sscanf(const char * __restrict__ _Src,const char * __restrict__ _Format,...);<br>      ^<br><built-in>:161:17: note: expanded from here<br>

#define __cdecl cdecl__))<br>                ^<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:84:17: note: previous definition is here<br>  _CRTIMP FILE *__cdecl __iob_func(void);<br>                ^<br>

<built-in>:161:17: note: expanded from here<br>#define __cdecl cdecl__))<br>                ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:141:7: error: expected ';' after top level<br>

      declarator<br>  int __cdecl __mingw_sscanf(const char * __restrict__ _Src,const char * __restrict__ _Format,...);<br>      ^<br><built-in>:161:24: note: expanded from here<br>#define __cdecl cdecl__))<br>                       ^<br>

In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:144:7: error: redefinition of 'cdecl__' with a</div>

<div>      different type: 'int' vs 'FILE *' (aka '_iobuf *')<br>  int __cdecl __mingw_vsscanf (const char * __restrict__ _Str,const char * __restrict__ Format,va_list argp);<br>      ^<br><built-in>:161:17: note: expanded from here<br>

#define __cdecl cdecl__))<br>                ^<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:84:17: note: previous definition is here<br>  _CRTIMP FILE *__cdecl __iob_func(void);<br>                ^<br>

<built-in>:161:17: note: expanded from here<br>#define __cdecl cdecl__))<br>                ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:144:7: error: expected ';' after top level<br>

      declarator<br>  int __cdecl __mingw_vsscanf (const char * __restrict__ _Str,const char * __restrict__ Format,va_list argp);<br>      ^<br><built-in>:161:24: note: expanded from here<br>#define __cdecl cdecl__))<br>

                       ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:147:7: error: redefinition of 'cdecl__' with a</div>

<div>      different type: 'int' vs 'FILE *' (aka '_iobuf *')<br>  int __cdecl __mingw_scanf(const char * __restrict__ _Format,...);<br>      ^<br><built-in>:161:17: note: expanded from here<br>

#define __cdecl cdecl__))<br>                ^<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:84:17: note: previous definition is here<br>  _CRTIMP FILE *__cdecl __iob_func(void);<br>                ^<br>

<built-in>:161:17: note: expanded from here<br>#define __cdecl cdecl__))<br>                ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:147:7: error: expected ';' after top level<br>

      declarator<br>  int __cdecl __mingw_scanf(const char * __restrict__ _Format,...);<br>      ^<br><built-in>:161:24: note: expanded from here<br>#define __cdecl cdecl__))<br>                       ^<br>In file included from mm.cpp:1:<br>

In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:150:7: error: redefinition of 'cdecl__' with a</div><div>      different type: 'int' vs 'FILE *' (aka '_iobuf *')<br>

  int __cdecl __mingw_vscanf(const char * __restrict__ Format, va_list argp);<br>      ^<br><built-in>:161:17: note: expanded from here<br>#define __cdecl cdecl__))<br>                ^<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:84:17: note: previous definition is here<br>

  _CRTIMP FILE *__cdecl __iob_func(void);<br>                ^<br><built-in>:161:17: note: expanded from here<br>#define __cdecl cdecl__))<br>                ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>

c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:150:7: error: expected ';' after top level<br>      declarator<br>  int __cdecl __mingw_vscanf(const char * __restrict__ Format, va_list argp);<br>

      ^<br><built-in>:161:24: note: expanded from here<br>#define __cdecl cdecl__))<br>                       ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:153:7: error: redefinition of 'cdecl__' with a</div>

<div>      different type: 'int' vs 'FILE *' (aka '_iobuf *')<br>  int __cdecl __mingw_fscanf(FILE * __restrict__ _File,const char * __restrict__ _Format,...);<br>      ^<br><built-in>:161:17: note: expanded from here<br>

#define __cdecl cdecl__))<br>                ^<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:84:17: note: previous definition is here<br>  _CRTIMP FILE *__cdecl __iob_func(void);<br>                ^<br>

<built-in>:161:17: note: expanded from here<br>#define __cdecl cdecl__))<br>                ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:153:7: error: expected ';' after top level<br>

      declarator<br>  int __cdecl __mingw_fscanf(FILE * __restrict__ _File,const char * __restrict__ _Format,...);<br>      ^<br><built-in>:161:24: note: expanded from here<br>#define __cdecl cdecl__))<br>                       ^<br>

In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:156:7: error: redefinition of 'cdecl__' with a</div>

<div>      different type: 'int' vs 'FILE *' (aka '_iobuf *')<br>  int __cdecl __mingw_vfscanf (FILE * __restrict__ fp, const char * __restrict__ Format,va_list argp);<br>      ^<br><built-in>:161:17: note: expanded from here<br>

#define __cdecl cdecl__))<br>                ^<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:84:17: note: previous definition is here<br>  _CRTIMP FILE *__cdecl __iob_func(void);<br>                ^<br>

<built-in>:161:17: note: expanded from here<br>#define __cdecl cdecl__))<br>                ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:156:7: error: expected ';' after top level<br>

      declarator<br>  int __cdecl __mingw_vfscanf (FILE * __restrict__ fp, const char * __restrict__ Format,va_list argp);<br>      ^<br><built-in>:161:24: note: expanded from here<br>#define __cdecl cdecl__))<br>                       ^<br>

In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:160:7: error: redefinition of 'cdecl__' with a</div>

<div>      different type: 'int' vs 'FILE *' (aka '_iobuf *')<br>  int __cdecl __mingw_vsnprintf(char * __restrict__ _DstBuf,size_t _MaxCount,const char * __restrict__ _Format,<br>      ^<br><built-in>:161:17: note: expanded from here<br>

#define __cdecl cdecl__))<br>                ^<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:84:17: note: previous definition is here<br>  _CRTIMP FILE *__cdecl __iob_func(void);<br>                ^<br>

<built-in>:161:17: note: expanded from here<br>#define __cdecl cdecl__))<br>                ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:160:7: error: expected ';' after top level<br>

      declarator<br>  int __cdecl __mingw_vsnprintf(char * __restrict__ _DstBuf,size_t _MaxCount,const char * __restrict__ _Format,<br>      ^<br><built-in>:161:24: note: expanded from here<br>#define __cdecl cdecl__))<br>

                       ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:164:7: error: redefinition of 'cdecl__' with a</div>

<div>      different type: 'int' vs 'FILE *' (aka '_iobuf *')<br>  int __cdecl __mingw_snprintf(char * __restrict__ s, size_t n, const char * __restrict__  format, ...);<br>      ^<br><built-in>:161:17: note: expanded from here<br>

#define __cdecl cdecl__))<br>                ^<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:84:17: note: previous definition is here<br>  _CRTIMP FILE *__cdecl __iob_func(void);<br>                ^<br>

<built-in>:161:17: note: expanded from here<br>#define __cdecl cdecl__))<br>                ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:164:7: error: expected ';' after top level<br>

      declarator<br>  int __cdecl __mingw_snprintf(char * __restrict__ s, size_t n, const char * __restrict__  format, ...);<br>      ^<br><built-in>:161:24: note: expanded from here<br>#define __cdecl cdecl__))<br>

                       ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:167:7: error: redefinition of 'cdecl__' with a</div>

<div>      different type: 'int' vs 'FILE *' (aka '_iobuf *')<br>  int __cdecl __mingw_printf(const char * __restrict__ , ... ) __MINGW_NOTHROW;<br>      ^<br><built-in>:161:17: note: expanded from here<br>

#define __cdecl cdecl__))<br>                ^<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:84:17: note: previous definition is here<br>  _CRTIMP FILE *__cdecl __iob_func(void);<br>                ^<br>

<built-in>:161:17: note: expanded from here<br>#define __cdecl cdecl__))<br>                ^<br>In file included from mm.cpp:1:<br>In file included from /libcxx/include\cstdio:100:<br>c:\mingw\bin\..\lib\clang\3.5.0\../../../x86_64-w64-mingw32/include\stdio.h:167:7: error: expected ';' after top level<br>

      declarator<br>  int __cdecl __mingw_printf(const char * __restrict__ , ... ) __MINGW_NOTHROW;<br>      ^<br><built-in>:161:24: note: expanded from here<br>#define __cdecl cdecl__))<br>                       ^<br>

fatal error: too many errors emitted, stopping now [-ferror-limit=]<br>20 errors generated.</div><div>c:\test><br></div></div>
<br>_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
<br></blockquote></div><br></div>