I spent ~hour yesterday fighting an issue with my C++ code, only to later figure out it's a possible GCC bug, because Clang accepts the same code.
The issue is that GCC does not permit a constrained type parameter in a template template parameter of an aliased template. See the simplified code with the issue.
A cursory search of GCC Bugzilla does not readily show any related bug. I'll look carefully but lemme know if this is a known bug (probably is). 🙏🏽
En el episodio de hoy de #yavosotrosque , abro mi VM con windows10, porque es sábado y tengo el cuerpo para full-contact y microsoft me dice que para que no me vuelva a congelar mis ficheros en OneDrive que borre, o compre más capacidad...
Tengo 0.1% ocupado. Creo que tengo un fichero de texto, o dos.
@plink@palestine@israel Having now skimmed through dozens of updates on that link, 1,000s of words, the fact that #Israel conducted an illegal act of war against a civilian building on Iranian soil that killed 16 people recently is never mentioned, with the missile strike on #Damascus is only vaguely mentioned 3 times. It is never labelled an 'unprecedented escalation', despite that being just as true as the latest development.
Also not mentioned by the #NYT is the fact that the 1st April Israeli strike was widely condemned as yet another breach of international law —by the #UN, the #EU, the #ArabLeague, the #OIC, the #GCC and dozens of national governments—but was not condemned by the US government.
Also not mentioned at all the highly pertinent fact that Israel (and its primary backer and weapons supplier the #USA) has spent six months committing atrocities against millions of civilians in #Gaza, with more children, more journalists, more healthcare workers, more humanitarian aid workers, and more UN employees violently killed than in any other conflict since at least the Rwandan genocide (and in some cases going back to WWII). Israel is responsible for the most rapid deterioration of the nutritional status of a civilian population since WWII.
I started seeing this after updating the system, which also updated gcc. I suspected a gcc regression, so I filed https://bugs.gentoo.org/923154 in Gentoo's bugzilla.
I found that the previous version of gcc didn't have this problem. Should be able to bisect..
I also tried and couldn't reproduce the failure in a 32-bit chroot on #Gentoo's #aarch64 development machine, so I was stuck doing all the debugging (and loooooong #gcc builds) on my very slow single-core 800MHz Solid Run #CuBox.
Diff'ing the assembly output between the working and non-working gcc versions I saw:
> - vmov.f64 d0, #6.:e+0
> + vmov.f64 d0, #7.0e+0
Naturally, binutils' assembler fails to recognize "6.:e+0" as a floating-point constant. Where is the ":" coming from?
@RogerBidon serious question, assuming you have to write mostly "targeted" code anyways (because a #mos6502 just won't reasonably run 98% of today's existing C code), what's the edge of a #GCC targeting this platform over e.g. #cc65?
If there's a real advantage, I might be tempted to bring this to #FreeBSD...
@thelastpsion cool! I haven't used it much instead of C++ but it is great that it doesn't depend on a complicated compiler like #GCC or #LLVM and still does quite well.
Learning about the gcc attribute ((ifunc ("resolve_xxx"))) construct is making me wonder what the hell the person who thought it up was drinking, smoking or eating, and the code review team too.
I'm struggling to think of a reasonable usecase for this monstrosity of a construct.
In the 1990s I used DJGPP to run a small C-based Unix tool I wrote on a DOS machine. Later years Cygwin was more the way I would do cross-platform GCC stuff. I now have even more appreciation for what they needed to do behind the scenes to get DJGPP working. #gcc#djgpp#history#ComputerHistory#RetroComputing Running GNU on DOS with DJGPP
I'm trying to fix a patch to allow #pixman's #ARM#NEON#assembly code to build with clang. They perform a lot of mechanical changes to switch to the "unified" ARM assembly syntax (.syntax unified), supported by both #gcc and #clang.
With clang the code builds but fails 3 of the tests in the test suite with what appear to be unaligned accesses. With gcc, the test suite passes before and after the patches.
"Modern C compilers already have the ability to be memory-safe, we just need to make minor -- and compatible -- changes to turn it on. Instead of a hard-fork that abandons legacy system, this would be a soft-fork that enables memory-safety for new systems."
Assigning your copyright to the FSF helps defend the GPL and keep software free. Thanks to Axel Stenkil Forsman, Huan Thieu Nguyen, Jinyi Xian, and waffl3x for assigning their copyright to the FSF! #GNU#Emacs#GCC Learn more at https://u.fsf.org/3ht#CopyrightAssignments