On Sat, Mar 2, 2013 at 7:39 AM, Rod Vagg <
r...@vagg.org> wrote:
>
> I'm (slowly) trying to get a libuv-based port of LevelDB going so people can
> use it on Windows with Node. Code is here in the libuv-port branch:
>
https://github.com/rvagg/leveldb
>
> My current hiccup is an odd one. By way of a few header files (particularly
> port_uv.h), uv.h should be included on each compilation unit and mostly I
> don't get any errors or even warnings. But then it comes to port_uv.cc,
> which really doesn't do anything special and certainly doesn't include any
> odd, extra header files itself I suddenly get this error about the ssize_t
> declaration in uv-win.h:
>
> port_uv.cc
> c:\users\rvagg\documents\github\leveldb\libuv\include\uv-private/uv-win.h(27):
> error C2146: syntax error : missing ';' before identifier 'ssize_t'
> [C:\Users\rvagg\Documents\GitHub\leveldb\leveldb.vcxproj]
> c:\users\rvagg\documents\github\leveldb\libuv\include\uv-private/uv-win.h(27):
> error C4430: missing type specifier - int assumed. Note: C++ does not
> support default-int
> [C:\Users\rvagg\Documents\GitHub\leveldb\leveldb.vcxproj]
> c:\users\rvagg\documents\github\leveldb\libuv\include\uv-private/uv-win.h(27):
> error C4430: missing type specifier - int assumed. Note: C++ does not
> support default-int
> [C:\Users\rvagg\Documents\GitHub\leveldb\leveldb.vcxproj]
> C:\Users\rvagg\Documents\GitHub\leveldb\libuv\include\uv.h(322): error
> C2061: syntax error : identifier 'ssize_t'
> [C:\Users\rvagg\Documents\GitHub\leveldb\leveldb.vcxproj]
> C:\Users\rvagg\Documents\GitHub\leveldb\libuv\include\uv.h(329): error
> C2061: syntax error : identifier 'ssize_t'
> [C:\Users\rvagg\Documents\GitHub\leveldb\leveldb.vcxproj]
> C:\Users\rvagg\Documents\GitHub\leveldb\libuv\include\uv.h(733): error
> C2061: syntax error : identifier 'ssize_t'
> [C:\Users\rvagg\Documents\GitHub\leveldb\leveldb.vcxproj]
> C:\Users\rvagg\Documents\GitHub\leveldb\libuv\include\uv.h(1518): error
> C2146: syntax error : missing ';' before identifier 'result'
> [C:\Users\rvagg\Documents\GitHub\leveldb\leveldb.vcxproj]
> C:\Users\rvagg\Documents\GitHub\leveldb\libuv\include\uv.h(1518): error
> C4430: missing type specifier - int assumed. Note: C++ does not support
> default-int [C:\Users\rvagg\Documents\GitHub\leveldb\leveldb.vcxproj]
> C:\Users\rvagg\Documents\GitHub\leveldb\libuv\include\uv.h(1518): error
> C4430: missing type specifier - int assumed. Note: C++ does not support
> default-int [C:\Users\rvagg\Documents\GitHub\leveldb\leveldb.vcxproj]
>
> fyi, MSVS 10.0, and:
>
> > MSBuild.exe /version
> Microsoft (R) Build Engine Version 4.0.30319.1
> [Microsoft .NET Framework, Version 4.0.30319.296]
>
> Which I guess looks like there's a stray macro rewriting this:
>
> typedef intptr_t ssize_t;
>
> But I have no idea what it could be!
>
> Has anyone seen anything like this before or have suggestions on where to go
> hunting to sort this out?
>
> Cheers,
> -- Rod
Perhaps related to
https://github.com/joyent/libuv/issues/702 ?