Re: Fix matching floating point on middle-endian machines
Johannes Weißl <[email protected]>
| Newsgroups | gmane.comp.lang.erlang.patches |
|---|---|
| Message-ID | <[email protected]> |
Hello again, I found and fixed three other occurrences in the code base where the endianness of doubles matters. After two weeks of testing I'm now fairly confident that Erlang runs fine on our platform. All four commits have been pushed to a new branch: git fetch git://github.com/weisslj/otp.git fix-float-middle-endian https://github.com/weisslj/otp/compare/erlang:maint...fix-float-middle-endian https://github.com/weisslj/otp/compare/erlang:maint...fix-float-middle-endian.patch Greetings, Johannes Weißl On Thu, May 30, 2013 at 10:07:10AM +0200, Johannes Weißl wrote: > This patch fixes matching of floating point numbers on middle-endian > platforms (ARM in my case). The error can be reproduced in QEMU using > this image: http://people.debian.org/~aurel32/qemu/armel/ > It builds up on Mike Sperbers patch (OTP-10209). Without this patch, the > float matching tests in bs_match_misc_SUITE fail. > > Here is a simple error example: > 1> <<_,_,_,_,_,_,_,_>> = <<1.25/float>>. > <<63,244,0,0,0,0,0,0>> > 2> <<1.25/float>> = <<63,244,0,0,0,0,0,0>>. > ** exception error: no match of right hand side value <<63,244,0,0,0,0,0,0>> _______________________________________________ erlang-patches mailing list [email protected] http://erlang.org/mailman/listinfo/erlang-patches