On Thu, 06 Jan 2011, Sisyphus wrote:
> 
> Hi,
> 
> There's still a (different) problem with this module and mingw.org's
> gcc-3.4.5. During 'dmake' I'm getting:
> 
> ############################
> Net.xs:52: error: conflicting types for 'USER_INFO_4'
> C:/home/rob/mingw_vista/i686-pc-mingw32/bin/../lib/gcc/i686-pc-
> mingw32/3.4.5/../../../../include/lmAccess.h:302:
> error: previous declaration of 'USER_INFO_4' was here
> Net.xs:52: error: conflicting types for 'PUSER_INFO_4'
> C:/home/rob/mingw_vista/i686-pc-mingw32/bin/../lib/gcc/i686-pc-
> mingw32/3.4.5/../../../../include/lmAccess.h:302:
> error: previous declaration of 'PUSER_INFO_4' was here
> Net.xs:60: error: conflicting types for 'USER_INFO_23'
> C:/home/rob/mingw_vista/i686-pc-mingw32/bin/../lib/gcc/i686-pc-
> mingw32/3.4.5/../../../../include/lmAccess.h:373:
> error: previous declaration of 'USER_INFO_23' was here
> Net.xs:60: error: conflicting types for 'PUSER_INFO_23'
> C:/home/rob/mingw_vista/i686-pc-mingw32/bin/../lib/gcc/i686-pc-
> mingw32/3.4.5/../../../../include/lmAccess.h:373:
> error: previous declaration of 'PUSER_INFO_23' was here
> Net.xs:67: error: conflicting types for 'GROUP_INFO_3'
> C:/home/rob/mingw_vista/i686-pc-mingw32/bin/../lib/gcc/i686-pc-
> mingw32/3.4.5/../../../../include/lmAccess.h:494:
> error: previous declaration of 'GROUP_INFO_3' was here
> Net.xs:67: error: conflicting types for 'PGROUP_INFO_3'
> C:/home/rob/mingw_vista/i686-pc-mingw32/bin/../lib/gcc/i686-pc-
> mingw32/3.4.5/../../../../include/lmAccess.h:494:
> error: previous declaration of 'PGROUP_INFO_3' was here
> dmake:  Error code 129, while making 'Net.o'
> ############################
> 
> The problem it seems is, that with my gcc-3.4.5
> UF_ENCRYPTED_TEXT_PASSWORD_ALLOWED is undefined, but needs to be defined.
> (Defining the symbol fixes the problem, and the module then builds and tests
> fine.)

It is not gcc-3.4.5, it is the latest version of w32api that screwed things up:

    w32api-3.14-mingw32-dev.tar.gz

That one seems to have added all the Win2003 structure definitions to
lmaccess.h, but failed to also add the new constants.  The only difference
between lmaccess.h is the new typedefs, but no change to the #define's,
so no way to test for it with the preprocessor. :(

I guess I should define all new structures with a different name and
not use the lmaccess.h version for any compiler.  I'll try that later...

> How ought this symbol come to be defined when lmaccess.h includes Windows
> 2003 additions ?
> I can't find the symbol in any of the headers that ship with Strawberry's
> gcc-4.x.x, though it's definitely being defined for that compiler.

I don't know, it is right there in my copy of Strawberry 5.12.1.0:

    C:\strawberry\c\i686-w64-mingw32\include\lmaccess.h

Cheers,
-Jan

Reply via email to