2009/8/21 Ozkan Sezer <seze...@gmail.com>:
> On Fri, Aug 21, 2009 at 10:42 AM, Ozkan Sezer<seze...@gmail.com> wrote:
>> On Fri, Aug 21, 2009 at 10:24 AM, Kai Tietz<ktiet...@googlemail.com> wrote:
>>> 2009/8/21 t66...@gmail.com <t66...@gmail.com>:
>>>> Hello,
>>>> I filed a bug report at gcc bug tracker
>>>> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41136
>>>> Is anyone encountering this bug and is there any possible workaround ?
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
>>>> trial. Simplify your report design, integration and deployment - and focus 
>>>> on
>>>> what you do best, core application coding. Discover what's new with
>>>> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
>>>> _______________________________________________
>>>> Mingw-w64-public mailing list
>>>> Mingw-w64-public@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>>>>
>>>
>>> Hello,
>>>
>>> thank you for reporting this. Please report such kind of failures to
>>> mingw-w64 project's bug tracker first. This looks not as a gcc bug
>>> itself, it seems to be more reasoned by other issues possibly reasoned
>>> by our runtime.
>>>
>>> Please describe also the environment you are using to build the native
>>> compiler, the date of runtime headers and crt you are using, and the
>>> binutils version you are using.
>>>
>>> Regards,
>>> Kai
>>
>> This happens because the autotools idiocy decides
>> that LFS is not available and _GLIBCXX_USE_LFS is
>> left undefined which is the first issue, it falls back to
>> fstat instead of fstat64 and fstat wraps onto fstat64i32.
>> This is actually a GCC bug, IMO.
>
> Hmm,
>
> configure:19184: checking for LFS support
> configure:19276:
> /home/ozzie/deneme1/W64_150956-src/build-gcc/./gcc/xgcc -shared-libgcc
> -B/home/ozzie/deneme1/W64_150956-src/build-gcc/./gcc -nostdinc++
> -L/home/ozzie/deneme1/W64_150956-src/build-gcc/x86_64-pc-mingw32/libstdc++-v3/src
> -L/home/ozzie/deneme1/W64_150956-src/build-gcc/x86_64-pc-mingw32/libstdc++-v3/src/.libs
> -L/home/ozzie/deneme1/W64_150956-src/build-gcc/x86_64-pc-mingw32/winsup/mingw
> -L/home/ozzie/deneme1/W64_150956-src/build-gcc/x86_64-pc-mingw32/winsup/w32api/lib
> -isystem /home/ozzie/deneme1/W64_150956-src/gcc44-svn/winsup/mingw/include
> -isystem /home/ozzie/deneme1/W64_150956-src/gcc44-svn/winsup/w32api/include
> -B/home/ozzie/cross_win64/x86_64-pc-mingw32/bin/
> -B/home/ozzie/cross_win64/x86_64-pc-mingw32/lib/ -isystem
> /home/ozzie/cross_win64/x86_64-pc-mingw32/include -isystem
> /home/ozzie/cross_win64/x86_64-pc-mingw32/sys-include -o conftest.exe
> -g -O2   -fno-exceptions   conftest.cc  >&5
> conftest.cc: In function 'int main()':
> conftest.cc:57: error: aggregate 'stat64 buf' has incomplete type and
> cannot be defined
> conftest.cc:58: error: 'fstat64' was not declared in this scope
> configure:19282: $? = 1
> configure: failed program was:
> | /* confdefs.h.  */
> |
> | #define PACKAGE_NAME "package-unused"
> | #define PACKAGE_TARNAME "libstdc++"
> | #define PACKAGE_VERSION "version-unused"
> | #define PACKAGE_STRING "package-unused version-unused"
> | #define PACKAGE_BUGREPORT ""
> | #ifdef __cplusplus
> | extern "C" void exit (int);
> | #endif
> | #define STDC_HEADERS 1
> | #define HAVE_SYS_TYPES_H 1
> | #define HAVE_SYS_STAT_H 1
> | #define HAVE_STDLIB_H 1
> | #define HAVE_STRING_H 1
> | #define HAVE_MEMORY_H 1
> | #define HAVE_STRINGS_H 1
> | #define HAVE_INTTYPES_H 1
> | #define HAVE_STDINT_H 1
> | #define HAVE_UNISTD_H 1
> | #define HAVE_DLFCN_H 1
> | #define LT_OBJDIR ".libs/"
> | #define _GLIBCXX_HOSTED 1
> | #define _GLIBCXX_SJLJ_EXCEPTIONS 1
> | #define HAVE_GTHR_DEFAULT 1
> | #define _GLIBCXX_ATOMIC_BUILTINS_1 1
> | #define _GLIBCXX_ATOMIC_BUILTINS_2 1
> | #define _GLIBCXX_ATOMIC_BUILTINS_4 1
> | #define _GLIBCXX_ATOMIC_BUILTINS_8 1
> | #define _GLIBCXX_USE_LONG_LONG 1
> | #define HAVE_WCHAR_H 1
> | #define HAVE_MBSTATE_T 1
> | #define HAVE_WCTYPE_H 1
> | #define _GLIBCXX_USE_WCHAR_T 1
> | #define _GLIBCXX_USE_C99_MATH 1
> | #define HAVE_TGMATH_H 1
> | #define HAVE_COMPLEX_H 1
> | #define HAVE_VFWSCANF 1
> | #define HAVE_VSWSCANF 1
> | #define HAVE_VWSCANF 1
> | #define HAVE_WCSTOF 1
> | #define HAVE_INT64_T 1
> | #define HAVE_INT64_T_LONG_LONG 1
> | /* end confdefs.h.  */
> | #include <unistd.h>
> |        #include <stdio.h>
> |        #include <sys/stat.h>
> |
> | int
> | main ()
> | {
> | FILE* fp;
> |        fopen64("t", "w");
> |        fseeko64(fp, 0, SEEK_CUR);
> |        ftello64(fp);
> |        lseek64(1, 0, SEEK_CUR);
> |        struct stat64 buf;
> |        fstat64(1, &buf);
> |   ;
> |   return 0;
> | }
> configure:19317: result: no
>
> We have struct _stat64, with the leading underscore,
> not without one.  This kind of crap is killing me..
> And the whole tree relies on the posix style non-
> underscored versions.
>
>> The second issue is that fstat64i32 is in _fstat64i32.c
>> but fstat() being defined as an inline wrapping around
>> it in sys/stat.h is marked __MINGW_ATTRIB_NO_OPTIMIZE
>> The no-optimize maybe causing an issue here ?.
>>
>> --
>> Ozkan
>>
>

Hmm, well. struct stat we define in wchar.h and in sys/stat.h, but
struct stat64 we don't. So possibly we should try to add it.

Cheers,
Kai

-- 
|  (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to