Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
Note: You can take 10% off all Slashdot Deals with coupon code "slashdot10off." ×

Submission + - .NET 4.6 optimizer bug causes methods to get wrong parameters

tobiasly writes: A serious bug in the just-released .NET 4.6 runtime causes the JIT compiler to generate incorrectly-optimized code which results in methods getting called with different parameters than what were passed in. Nick Craver of Stack Exchange has an excellent write-up of the technical details and temporary workarounds; Microsoft has acknowledged the problem and submitted an as-yet unreleased patch.

This problem is compounded by Microsoft's policy of replacing the existing .NET runtime, as opposed to the side-by-side runtimes which were possible until .NET 2.0. This means that even if your project targets .NET 4.5, it will get the 4.6 runtime if it was installed on that machine. Since it's not possible to install the just-released Visual Studio 2015 without .NET 4.6, this means developers must make the difficult choice between using the latest tools or risking crippling bugs such as this one.

Comment Re:It's not so easy (Score 2) 217

...plus those who you can't trust

You do raise some really good points (although I'm pretty sure I can think of at least a few friends who could go along w/ it), but the trust issue could be greatly mitigated by a video recording of the illicit agreement. If your friend tries to make off with all of it, you have evidence of their complicity.

It is rather baffling that this person didn't execute his plan any better. He should have had his friend buying lottery tickets every day for months beforehand.

Comment Re:Why? (Score 1) 355

Java is designed to be cross platform. In this case instead of targeting an operating system, you are targeting another virtual environment. While not perfect, it works much more often out of the box than WINE does.

.NET also targets a virtual environment, called the Common Language Runtime. It's the same concept as the JVM. There is absolutely no WINE involved with running Mono apps on other platforms; they run on a native implementation of the CLR on that platform.

Microsoft themselves only implemented the CLR on one platform, but that doesn't mean it wasn't also designed to be corss-platform. It even has means of querying the platform (usually via System.Environment) rather than assuming Windows-isms.

Comment Re:Justice Department? (Score 1) 223

WTF do they have to do with this case? This isn't a criminal proceeding, it's a civil matter.

I've absolutely given up on trying to figure out how our government works. Apparently SCOTUS specifically asked them for their opinion. And here I thought our founders wanted separation of powers, and in particular that the Supreme friggin' Court was intended to be insulated from the ebb and flow of political interests in the other two branches.

I could understand if the Justice Dept decided to file an amicus brief just like everyone else, but I can't understand why SCOTUS specifically sought their opinion.

Comment Re:obvious much? (Score 1) 414

No, really? The cost of maintaining is in maintenance? Well, now that's some earth shattering surprise.

I thought the same thing when I first read that, but then again we're talking about an architect for the language that brought us "Foo foo = new Foo();" so a bit of redundancy is to be expected ;)

Comment Re:whatever (Score 1) 126

The actual content of the reviews doesn't matter much. Whether intentionally or not, people filter out products with less than 4 stars, and Amazon ranks more popular items higher. It's a virtuous circle for the sellers that have higher-ranked reviews. Getting those initial good reviews can make all the difference between two similar or nearly identical products.

God doesn't play dice. -- Albert Einstein

Working...