Hacker News new | past | comments | ask | show | jobs | submit | hun3's comments login

The affected platforms lack an OS (e.g., bootloaders) and/or an MMU/MPU (e.g., microprocessors like AVR)


I don't care about platform specific stuff. I'm talking about C which is actually intended to be portable. Nothing written with portability in mind in the past ~decade is going to be doing this.


C is not node.js. C exists for 50 years and is expected to have stable API. In scientific circles it's not unusual to compile c and f77 libraries built in the 70's, 80's.

BLAS, gemv, GEMM, SGEMM libraries are from 1979, 1984, 1989. You may have seen these words scroll by when compiling modern 2025 CUDA :)


I was writing C long before node.js existed :)

C has no backwards compatibility guarantee, and it never has. Try compiling K&R C with gcc's defaults, and see what happens.

You can build your legacy code with legacy compiler flags. Why do you care about the ability to build under the modern standards?


I think we're going a bit past each other.

In AVR or other MPU-less architecture you can literally modify the string literal memory without triggering a crash.

Why? Because there is no memory protection ("rodata") at all.

And such microprocessors are still in use today, so it's a bit too far fetched to say "really old code."

It's UB, sure, but how many embedded programmers actually care? The OP's proposal is trying to change the type system so that this UB becomes much less likely to trigger in practice.


Quoting a paragraph from OP (https://www.anthropic.com/research/tracing-thoughts-language...):

> Sometimes, this sort of “misfire” of the “known answer” circuit happens naturally, without us intervening, resulting in a hallucination. In our paper, we show that such misfires can occur when Claude recognizes a name but doesn't know anything else about that person. In cases like this, the “known entity” feature might still activate, and then suppress the default "don't know" feature—in this case incorrectly. Once the model has decided that it needs to answer the question, it proceeds to confabulate: to generate a plausible—but unfortunately untrue—response.


Fun fact, "confabulation", not "hallucinating" is the correct term what LLMs actually do.


Fun fact, the "correct" term is the one in use. Dictionaries define language after the fact, they do not prescribe its usage in the future.


Confabulation means generating false memories without intent to deceive, which is what LLMs do. They can't hallucinate because they don't perceive. 'Hallucination' caught on, but it's more metaphor than precision.


WinRing0 is associated with CVE-2020-14979 where any local program can take complete control (NT AUTHORITY\SYSTEM) over your system: https://nvd.nist.gov/vuln/detail/cve-2020-14979

It is possible, although not confirmed, that the block was motivated by an ongoing malware threat that involves this particular threat, but take this with a grain of salt.


-O3 does autovectorization: turning your loops into a bunch of SIMD instructions, sometimes even drastically changing performance profile.

If autovectorization is "not that much magic" then idk what else it is.


Any optimization you are familiar with is trivial and expected. Everything else is broken compilers optimizing UB to win benchmarks.


Nowadays it's -O2. I was also surprised when I first learned this.


At least it's one day off from 996.icu

for now.



idk, losing access to preinstalled OEM license?


Or VBA, which has Empty, Null, and Nothing:

https://excelbaby.com/learn/the-difference-between-empty-nul...

(and sometimes Missing)


(2016)


Added


Have fun brute forcing heisenbugs and LLM hallucinations


I use a debugger, tell that to all the people using LLMs.


Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: