• Errors in latest xHarbour repository

    From Enrico Maria Giordano@e.m.giordano@emagsoftware.it to comp.lang.xharbour on Mon Jun 24 23:47:57 2024
    From Newsgroup: comp.lang.xharbour

    The errors are listed below. I think the problem is this line in include\hbdefs.h:

    #if defined( __GNUC__ )
    typedef intptr_t LONG_PTR;
    typedef uintptr_t ULONG_PTR;
    #endif

    From this changelog:

    2024-05-15 20:20 UTC-0800 Ron Pinkas <ronpinkas/AT/gmail/com>
    * include/hbdefs.h
    ! Added support for LONG_PTR and ULONG_PTR under #ifdef __GNUC__

    Ron, can you look at it? Otherwise, I will try to comment out the above
    lines. Let me know.


    In file included from e:\fw\temp\mgw32\i686-w64-mingw32\include\winnt.h:150,
    from e:\fw\temp\mgw32\i686-w64-mingw32\include\minwindef.h:163,
    from e:\fw\temp\mgw32\i686-w64-mingw32\include\windef.h:9,
    from
    e:\fw\temp\mgw32\i686-w64-mingw32\include\windows.h:69,
    from source\common\hbfsapi.c:68: e:\fw\temp\mgw32\i686-w64-mingw32\include\basetsd.h:54:16: error:
    conflicting types for 'LONG_PTR'
    typedef long LONG_PTR,*PLONG_PTR;
    ^~~~~~~~
    In file included from include/hbvmpub.h:67,
    from include/hbapi.h:61,
    from source\common\hbfsapi.c:58:
    include/hbdefs.h:115:24: note: previous declaration of 'LONG_PTR' was here
    typedef intptr_t LONG_PTR;
    ^~~~~~~~
    In file included from e:\fw\temp\mgw32\i686-w64-mingw32\include\winnt.h:150,
    from e:\fw\temp\mgw32\i686-w64-mingw32\include\minwindef.h:163,
    from e:\fw\temp\mgw32\i686-w64-mingw32\include\windef.h:9,
    from
    e:\fw\temp\mgw32\i686-w64-mingw32\include\windows.h:69,
    from source\common\hbfsapi.c:68: e:\fw\temp\mgw32\i686-w64-mingw32\include\basetsd.h:55:25: error:
    conflicting types for 'ULONG_PTR'
    typedef unsigned long ULONG_PTR,*PULONG_PTR;
    ^~~~~~~~~
    In file included from include/hbvmpub.h:67,
    from include/hbapi.h:61,
    from source\common\hbfsapi.c:58:
    include/hbdefs.h:116:25: note: previous declaration of 'ULONG_PTR' was here
    typedef uintptr_t ULONG_PTR;
    ^~~~~~~~~
    mingw32-make: *** [winmake/compile.mak:1535: obj\gc\hbfsapi.o] Error 1
    --
    Enrico Maria Giordano

    http://www.emagsoftware.it
    http://www.emagsoftware.it/emgmusic
    http://www.emagsoftware.it/spectrum
    http://www.emagsoftware.it/tbosg
    --- Synchronet 3.21d-Linux NewsLink 1.2
  • From Ron Pinkas@ron@ronpinkas.com to comp.lang.xharbour on Mon Jun 24 17:18:49 2024
    From Newsgroup: comp.lang.xharbour

    Enrico,

    The errors are listed below. I think the problem is this line in include\hbdefs.h:

    #if defined( __GNUC__ )
    typedef intptr_t LONG_PTR;
    typedef uintptr_t ULONG_PTR;
    #endif

    From this changelog:

    2024-05-15 20:20 UTC-0800 Ron Pinkas <ronpinkas/AT/gmail/com>
    * include/hbdefs.h
    ! Added support for LONG_PTR and ULONG_PTR under #ifdef __GNUC__

    Ron, can you look at it? Otherwise, I will try to comment out the above lines. Let me know.

    These lines should nbever be commented because youe change that
    introduced [U]LONG_PTR broke all non windows builds. You can fix it like
    this

    #if defined( __GNUC__ ) && !defined( __MINGW32__ )

    Maybe same for other GNUC Windows compilers.

    Ron
    --- Synchronet 3.21d-Linux NewsLink 1.2
  • From Enrico Maria Giordano@e.m.giordano@emagsoftware.it to comp.lang.xharbour on Tue Jun 25 09:38:42 2024
    From Newsgroup: comp.lang.xharbour



    Il 25/06/2024 00:18, Ron Pinkas ha scritto:

    Ron, can you look at it? Otherwise, I will try to comment out the above
    lines. Let me know.

    These lines should nbever be commented because youe change that
    introduced [U]LONG_PTR broke all non windows builds. You can fix it like
    this

    #if defined( __GNUC__ ) && !defined( __MINGW32__ )

    Maybe same for other GNUC Windows compilers.

    Ok, thank you!
    --
    Enrico Maria Giordano

    http://www.emagsoftware.it
    http://www.emagsoftware.it/emgmusic
    http://www.emagsoftware.it/spectrum
    http://www.emagsoftware.it/tbosg

    --- Synchronet 3.21d-Linux NewsLink 1.2