Stefan Behnel wrote:
> David Martin wrote:
>> I am getting quite a few errors when running the Cython tests through 
>> runtests.py. This is on a machine with VS .NET 2003 installed, using the 
>> command 'python runtests.py --no-refnanny". I get the same set of errors 
>> when I run the tests using the mingw compiler.
>> [...]
>> callargs.c
>> callargs.c(398) : error C2026: string too big, trailing characters truncated
>> callargs.cpp
>> callargs.cpp(398) : error C2026: string too big, trailing characters 
>> truncated
>> [...]
> 
> This is a known limitation of older MS compilers which fail to compile
> strings of 2048 bytes or longer (really bytes, not GB or something, just a
> tiny 2048 bytes). Usually not too hard to work around for 'normal' string
> literals which can be concatenated, but certainly a big problem for doc
> strings (which is the case here, Cython's test suite consists of doctests).
> 
> I looked into this a while ago, but it would require changing the way
> docstrings are set up. Currently, we just write the string literals into a
> func/type/etc. struct member somewhere. To fix this, we'd need to build the
> literal dynamically during module initialisation, fix the static struct
> member to point to it (or rather allocate the struct on the heap and do it
> there), and free() the string during module cleanup. Seemed like too much
> hassle at the time, especially since the problem has now gone away with
> Python 2.6, which requires a newer MS compiler IIRC. MinGW (obviously) does
> not suffer from this problem either.

I'm all in favor of officially dropping support for older VS compilers 
which newer Python versions do not support. MinGW is always a 
possibility anyway.

It probably should be documented clearly somewhere which compilers we 
aim to support though...

-- 
Dag Sverre
_______________________________________________
Cython-dev mailing list
[email protected]
http://codespeak.net/mailman/listinfo/cython-dev

Reply via email to