back
user profile
uecker
2,146karma·1,822submissions·April 14, 2020
about
Computational Magnetic Resonance Imaging, Real-time Magnetic Resonance Imaging, GCC Contributor, BART Toolbox, Member of ISO C WG14
recent activity (1,822 total)
comment
Ref [1] says that extending the use of the plants until March 31. could help reduce prices by the Merit-order effect. This extension is exactly what Habeck did: The life time was extended! So this i…
comment
The decision was made a long time ago by a conservative government. The Merkel government shut down 6 nuclear plants after Fukushima. When the current government with what you call the came to power…
comment
This is a lot of nonsense debunked widely in German press.
comment
It is indeed one of the most grotesque language design errors C++ did early on.
comment
This is the same for C and C++ and C compile times are dramatically shorter than C++. Also doing semantic analysis during parsing should save time compared to having additional tree walking later (and…
comment
I am quite happy with the quality of C. M4 not so much. In terms of supply chain attacks, cargo is the worst I have ever seen.
comment
For production one could use -fsanitize-undefined-trap-on-error that turns it into traps. I would not describe the cost of -fsanitize-undefined=bounds has huge. The cost of Asan is huge.
comment
I fully agree than most of problems of C can be mitigated with good training. It it of course far easier to blame the language than admit that there is a skill issue. The story that this a language fu…
comment
Not really that much In my experience. Most of the unsafety is very obvious and most of the memory safety really come from errors from this obviously unsafe parts, e.g. the most common memory safety …
comment
You certainly could get the same level of safety via annotations as you can in safe language. And if you transition existing code, you do not need to rewrite that will introduce new bugs and invalidat…
comment
I am currently working on a GCC frontend that has a memory safe mode where it would warn about every unsafe constructs. At the same time a trying on modifying some of my projects to work with it. To…
comment
For signed overflow I use -fsanitize=signed-integer-overflow .
comment
I agree. From a technical point of view formal verification would absolutely be the right direction. I haven't given up hope. A long time ago, I was flamed to death for suggesting that reproduci…
comment
Essentially this is was distributions such as Debian do for your (if you trust them and their security enough which depends on your requirements). xz is noteworthy because someone spent more than two …
comment
I never test for this in this way in my C projects. I also rely on version tests only.
comment
Huh, the code with a dot is not legal C. It is CMake issue that the test breaks here.
comment
It is a joy but makes it far too easy to pull in dependencies. And then Build.rs also runs. From a supply chain security perspective, Rust scares me.
comment
I would say today there is no real need for autoconf anymore in C / C++ and the build process could be fairly easy.
comment
Fundamentally there is no difference. In practice Rust makes things a lot worse. It encourages the use of dependencies from random (i.e. published with cargo) sources without much quality control. It …
comment
The code that runs during testing should not be allowed to affect the package though. If this is possible, this is misdesigned.
comment
You need to compare to memory on the main board.
comment
Certainly a huge difference, but if you want good performance you need to treat this as a remote buffer management problem in both cases.
comment
GNU obstacks also already exist for as long as I can remember. Everything old is new again...
comment
No, he is correct. The GPU on the other side of the PCI is a remote computer.
comment
Sanitizers without runtime, i.e. -fsanitize=bounds -fsanitize-trap=bounds, can be used in production? And I think it can be used on existing projects by refactoring. Catching this at compile-time w…
comment
The problem is existing practice. GCC has solved this problem for function parameters a long time ago with parameter forward declarations. But other compilers did not copy this GNU extension, and also…
comment
huh? There are also security bugs in Rust, so it is theatre as well? Pointer ownership could eliminate a class of bugs. And such an approach can be combined with run-time checks for bounds and signed …
comment
Portable C code could not use MSVC until recently, because MSVC was stuck with C89 because MS wanted everybody to switch to C++.
comment
VLAs were optional in C11 and compilers that supported them in C99 also supported them in C11. The only important compiler not supporting VLAs is MSVC, but this compiler also did not support other fe…
comment
That is exactly how you create any other type of object on the heap.