Package: polyml / 5.6-8
Metadata
| Package | Version | Patches format |
|---|---|---|
| polyml | 5.6-8 | 3.0 (quilt) |
Patch series
view the series file| Patch | File delta | Description |
|---|---|---|
| streamtoken endian.diff | (download) |
libpolyml/globals.h |
2 1 + 1 - 0 ! |
use a polyunsigned for streamtoken.streamno On a 64-bit big-endian architecture with sizeof(unsigned) == 4, streamNo is set for stdin/stdout/stderr in add_word_to_io_area by treating it as a PolyWord, which is a 64-bit value. However, streamNo is a 32-bit value, so any code that uses it sees 4 bytes of zeroes, as the least-significant bits are in the next 4 bytes. By using a POLYUNSIGNED, the sizes match. |
| ioctl int.diff | (download) |
libpolyml/network.cpp |
9 6 + 3 - 0 ! |
use int instead of unsigned long for ioctl calls On 64-bit big-endian machines, int is 32-bit but unsigned long is 64-bit. ioctl is supposed to take a pointer to an int; on little-endian machines it does not matter if you give it a pointer to a longer type, but on big-endian machines ioctl ends up seeing the leading 4 bytes of zeroes when passing it a pointer to an unsigned long set to 1, and ends up effectively multiplying the output by 2^32 when given an out pointer to an unsigned long. |
| s390.diff | (download) |
config.h.in |
6 6 + 0 - 0 ! |
add support for s/390 |
| rounding mode test allow exceptions.diff | (download) |
Tests/Succeed/Test121.ML |
67 43 + 24 - 0 ! |
change rounding mode test to allow for the possibility of exceptions. IEEReal.setRoundingMode may raise an exception if it is not implemented or only implemented for certain rounding modes. |
| rounding mode test only allow exceptions for set mode.diff | (download) |
Tests/Succeed/Test121.ML |
18 10 + 8 - 0 ! |
fix change to test to deal only with an exception from setroundingmode. Catching all exceptions effectively disabled the test completely |
| soft fpu.diff | (download) |
libpolyml/reals.cpp |
21 20 + 1 - 0 ! |
handle setround/getround on soft fpu |
| disable compile time real eval.diff | (download) |
libpolyml/poly_specific.cpp |
33 18 + 15 - 0 ! |
disable compile-time evaluation of real number functions. Real number operations depend on the current rounding mode. That means that in general it is not possible to "fold" operations on real constants. |
| mips abi.diff | (download) |
libpolyml/elfexport.cpp |
3 3 + 0 - 0 ! |
mark polyexport.o as cpic on mips when code is position-independent |
| unix const vec unsigned.diff | (download) |
libpolyml/unix_specific.cpp |
2 1 + 1 - 0 ! |
define unixconstvec as unsigned . Fixes narrowing conversion inside braces on PowerPC with GCC 6 |
| fix script args.diff | (download) |
basis/TopLevelPolyML.sml |
9 6 + 3 - 0 ! |
fix --script to read the next argument as the file rather than the last. The --script argument is intended for use in a shell script to skip the #! line. It was reading the last argument as the name of the script file which meant it only worked if there were no arguments. |
| fix heap ratio assert.diff | (download) |
libpolyml/heapsizing.cpp |
6 3 + 3 - 0 ! |
the calculated cost of the minimum heap size may be exactly the value desired. In that case the previous code failed an assertion check. |
| use polyunsigned consistently for stream ids.diff | (download) |
libpolyml/basicio.cpp |
23 14 + 9 - 0 ! |
use polyunsigned consistently for stream ids Handle failure in realloc correctly in make_stream_entry. |
| alpha.diff | (download) |
config.h.in |
3 3 + 0 - 0 ! |
add support for alpha |
| m68k.diff | (download) |
config.h.in |
3 3 + 0 - 0 ! |
add support for motorola 68000 |
| mips64.diff | (download) |
config.h.in |
3 3 + 0 - 0 ! |
add support for 64-bit mips |
| x32.diff | (download) |
config.h.in |
3 3 + 0 - 0 ! |
add support for x32 abi |
| maxpathlen.diff | (download) |
libpolyml/basicio.cpp |
50 35 + 15 - 0 ! |
remove all use of maxpathlen and its variants |
| noexec stack gnu.diff | (download) |
config.h.in |
3 3 + 0 - 0 ! |
mark stack as non-executable on all gnu systems |
| source date epoch.diff | (download) |
basis/FinalPolyML.sml |
25 21 + 4 - 0 ! |
use source_date_epoch instead of current time if it is defined |
| bss ioarea.diff | (download) |
libpolyml/elfexport.cpp |
96 57 + 39 - 0 ! |
export ioarea to bss section |
| noflsh unsigned.diff | (download) |
libpolyml/unix_specific.cpp |
2 1 + 1 - 0 ! |
cast noflsh to unsigned |
| maxhostnamelen.diff | (download) |
libpolyml/network.cpp |
54 25 + 29 - 0 ! |
remove all use of maxhostnamelen |
| sparc64.diff | (download) |
config.h.in |
3 3 + 0 - 0 ! |
add support for 64-bit sparc |
| sh.diff | (download) |
config.h.in |
3 3 + 0 - 0 ! |
add support for superh |
| hppa.diff | (download) |
config.h.in |
3 3 + 0 - 0 ! |
add support for hp pa-risc |
| thread exited interrupt requested overlap.diff | (download) |
libpolyml/processes.h |
2 1 + 1 - 0 ! |
fix threadexited and interrupt_requested overlapping HAVE_PTHREAD isn't necessarily defined when processes.h is included, as it is defined in processes.cpp, but not when included by interpret.cpp. As a result, the root thread can believe that an interrupted thread has been killed, prematurely deleting its task data. This fixes #9. |
| polyc it.diff | (download) |
polyc.in |
2 1 + 1 - 0 ! |
don't set "it" in polyc This stops polyc from setting (and potentially shadowing) the implicit it variable, allowing Tests/Fail/Test071.ML to pass when the test suite is compiled with polyc. |
| reset save vector sleep.diff | (download) |
Tests/Fail/Test073.ML |
5 5 + 0 - 0 ! |
ensure the save vector is reset when sleeping in Posix.Process.sleep. This is almost the same as commit 57bc974 in basicio.cpp. |
| wait return valid status.diff | (download) |
libpolyml/unix_specific.cpp |
5 3 + 2 - 0 ! |
only return the "status" value from "wait" if the result is non-zero. The calling code in the Posix structure converts the status result to a value of type exit_status even if the pid is zero. The result is ignored in that case but it can result in a Fail exception if the status is invalid. |
| polyc dont capture build path.diff | (download) |
configure.ac |
15 15 + 0 - 0 ! |
don't capture -fdebug-prefix-map in polyc's cflags |
| spelling errors.diff | (download) |
mlsource/MLCompiler/CodeTree/ByteCode/CODE_SEG.ML |
4 2 + 2 - 0 ! |
export ioarea to bss section |
