Hi, On Aug 24, 4:21 am, Søren Gjesse <[email protected]> wrote: > Hi, > > Looking at the compiler once more it looks as if int32_t is long on MINIX, > whereas on Linux it is int. In > https://gforge.cs.vu.nl/gf/project/minix/scmsvn/?action=browse&path=/... > i32_t is typedef to long when __SIZEOF_LONG__ == 4. > > I found some more mixed uses int/int32_t, which might be causing the > compiler issues you are facing. Could you maybe try the patch below, which > should get rid of more of these, and see where that brings you.
Yes, I don't have much experience, but I have noticed a few differences (this and "int64_t," for which I'm using a patch to the "ansi.h" header file) between MINIX and other systems. Is MINIX's difference too much to be supported easily (perhaps changes should be done to it instead of V8?), or is it a lot of work like any system? > Regards, > Søren I updated to revision 5322 and applied the patch (it appears to be applied correctly). Here's the last part of my build: /usr/gnu/bin/g++ -o obj/release/jsregexp.o -c -Wall -Werror -W -Wno- unused-parameter -Wnon-virtual-dtor -pedantic -m32 -O3 -fomit-frame- pointer -ansi -Wno-char-subscripts -fno-strict-aliasing -fno-rtti -fno- exceptions -Wall -Werror -W -Wno-unused-parameter -Wnon-virtual-dtor - pedantic -m32 -O3 -fomit-frame-pointer -ansi -Wno-char-subscripts -fno- strict-aliasing -DV8_TARGET_ARCH_IA32 -DENABLE_VMSTATE_TRACKING - DENABLE_LOGGING_AND_PROFILING -DENABLE_DEBUGGER_SUPPORT -Isrc src/ jsregexp.cc src/jsregexp.cc: In static member function 'static v8::internal::RegExpImpl::IrregexpResult v8::internal::RegExpImpl::IrregexpExecOnce(v8::internal::Handle<v8::internal::JSRegExp>, v8::internal::Handle<v8::internal::String>, int, v8::internal::Vector<long int>)': src/jsregexp.cc:410: error: no matching function for call to 'v8::internal::NativeRegExpMacroAssembler::Match(v8::internal::Handle<v8::internal::Code>&, v8::internal::Handle<v8::internal::String>&, long int*, int, int&)' src/regexp-macro-assembler.h:186: note: candidates are: static v8::internal::NativeRegExpMacroAssembler::Result v8::internal::NativeRegExpMacroAssembler::Match(v8::internal::Handle<v8::internal::Code>, v8::internal::Handle<v8::internal::String>, int*, int, int) <near match> src/jsregexp.cc: In static member function 'static v8::internal::Handle<v8::internal::Object> v8::internal::RegExpImpl::IrregexpExec(v8::internal::Handle<v8::internal::JSRegExp>, v8::internal::Handle<v8::internal::String>, int, v8::internal::Handle<v8::internal::JSArray>)': src/jsregexp.cc:484: error: no matching function for call to 'v8::internal::Vector<long int>::Vector(int*, int)' src/utils.h:318: note: candidates are: v8::internal::Vector<T>::Vector(T*, int) [with T = long int] <near match> src/utils.h:317: note: v8::internal::Vector<T>::Vector() [with T = long int] src/utils.h:315: note: v8::internal::Vector<long int>::Vector(const v8::internal::Vector<long int>&) scons: *** [obj/release/jsregexp.o] Error 1 scons: building terminated because of errors. I guess that this is caused by MINIX's differing definition of "int32_t" and might lead to changes in related parts of V8? I'm sorry if this is an abnormally large amount of work. Thanks, pikpik -- v8-users mailing list [email protected] http://groups.google.com/group/v8-users
