4 ms·
What's your reasons?
by omegalulw 4y ago
What's your reasons?
- teddyh 4y ago(Not the GP, but) I use GCC for nested functions. Also, for not being an obvious ploy by Apple etc. to replace a GPL project with a permissively licensed one.
- pertymcpert 4y agoGoogle are a bigger contributor to LLVM than Apple and they don't have any proprietary compiler for C/C++.
- teddyh 4y agoGoogle supporting a project does not make me trust that project more. Rather the opposite, in fact.
- pjmlp 4y agoActually both of them have moved away from their clang involvement, hence why clang has slowed down in ISO C++ compliance, as compiler vendors using clang forks don't seem that keen in helping upstream.
- planede 4y ago> nested functions With executable stack and all that jazz?
- teddyh 4y agoWell, I also use a massive amount of -Wstuff flags, and "-D_FORTIFY_SOURCE=3 -fstack-protector-all -fPIC -fPIE". I think I’m good.
- planede 4y ago_FORTIFY_SOURCE only goes up to 2
- cipherboy 4y agohttps://developers.redhat.com/blog/2021/04/16/broadening-compiler-checks-for-buffer-overflows-in-_fortify_source#what_s_next_for__fortify_source https://developers.redhat.com/blog/2021/04/16/broadening-com... Red Hat seems to have a =3
- teddyh 4y agoThe GNU C library version 2.33, released in february 2021, supports _FORTIFY_SOURCE=3, but reportedly it makes no difference on GCC yet.
- planede 4y agoI stand corrected then, I checked an older version.
- freemint 4y agoAnd how is that bad?
- teddyh 4y agoIf only it stayed permissive, it wouldn’t be a problem. But hardware companies making proprietary compilers based on LLVM is a problem if the users of the hardware then have no free compiler available. If there was no LLVM to fork and take proprietary, the users would have free GCC available to them, since the hardware company would have used GCC, which requires the company to release the hardware support. They would release it, since it does not affect their primary source of income, which is hardware. But if LLVM is available, they will get dollar signs in their eyes, and have visions of selling expensive proprietary compilers to a captive market (i.e. owners of their hardware).
- freemint 4y ago> But if LLVM is available, they will get dollar signs in their eyes, and have visions of selling expensive proprietary compilers to a captive market (i.e. owners of their hardware). This is literally not what is happening in the real world though. Counter example: NEC SX Aurora (literally developed in the open https://github.com/sx-aurora-dev/llvm-project https://github.com/sx-aurora-dev/llvm-project), Fujitsu A64FX (free LLVM based compiler, $$$$ proprietary home grown compiler), AMD with hipSYCL. The reason for this if there was no LLVM available, the compiler would be totally proprietary. This from scratch compiler would have been more expensive to make leading it to not being available for free but instead licensed at huge cost. There has been no uptake of GCC for this role since it's inception. We both know why. And even if a $$$$ using LLVM is made i would prefer that over a fully custom compiler. I can link against it like a LLVM compiler and you can learn a lot about a unknown platform from how LLVM compiles for it, making reverse engineering a lot easier compared to a proprietary compiler.
- teddyh 4y ago> This is literally not what is happening in the real world though. Give it time. You know what happened with GCC on the NeXT computer; the only reason the NeXT compiler became free is because NeXT had to release it, since they based it on GCC. > There has been no uptake of GCC for this role since it's inception. We both know why. We do not. I was under the impression that the GCC stance on modularity has mellowed in recent times. > using LLVM is made i would prefer that over a fully custom compiler. False dichotomy. I would prefer GCC.
- goodpoint 4y agoIt's fast, reliable, has a good community and it protects the ecosystem and its userbase by using GPL.