| 15 Nov 2024 |
emily | but maybe :) | 09:00:50 |
emily | there's an Alyssa commit with a reproducer for the wrapped one | 09:00:57 |
emily | hm, maybe all the reports were just for the wrapped compiler? | 09:01:08 |
emily | but in that case I have no idea why someone felt the need to bake it into a patch | 09:01:15 |
emily | let me do some proper digging | 09:01:22 |
p14 | https://github.com/NixOS/nixpkgs/pull/153963 was the original patch that added it, but I did not understand the justification yet | 09:01:41 |
emily | wow, backporting a change that incompatible to the previous release | 09:02:16 |
p14 | No wait, looking at the patch it just changed the implementation | 09:02:19 |
emily | the past is a foreign country | 09:02:27 |
emily | In reply to @p14:matrix.org No wait, looking at the patch it just changed the implementation yeah. but somehow fixed that bug? apparently? | 09:02:32 |
emily | oh | 09:02:39 |
emily | I guess the sed just rotted | 09:02:40 |
emily | 1e26d33371a4a7238a644c49ddae49a4009c927f is the patch with the reproducer btw | 09:02:53 |
emily | I say the criteria for replacing the patch is to not regress that example and unwrapped compilers can behave however | 09:03:09 |
emily | anyway, I chased back the -nostdlibinc through Git blame before, let me do it again now that I'm not just venting to the macOS room 😅 | 09:03:34 |
emily | it broke things for us because libclang is essentially unwrapped | 09:03:46 |
emily | which is its own problem | 09:03:50 |
emily | and a good reason we need to move off wrappers in time | 09:04:00 |
p14 | There are old patches which mess with this. https://github.com/NixOS/nixpkgs/commit/006d8dcdc1127808d6c68f3b72f8c3d0d8e79014 | 09:04:49 |
p14 | This was the first match for DriverArgs.hasArg via git log -G DriverArgs.hasArg ./pkgs/development/compilers/llvm/. | 09:05:15 |
emily | uh, wow | 09:05:27 |
emily | hm this looks different | 09:05:40 |
emily | well | 09:05:46 |
p14 | Might be some legacy here 😅 | 09:05:58 |
emily | I guess it's similar in effect | 09:05:59 |
emily | yeah… | 09:06:06 |
emily | I mean how about we just move it to the wrapper? | 09:06:18 |
emily | it's still not the Right Thing IMO, but it causes a lot less damage in the wrapper | 09:06:35 |
emily | FWIW the wrapper has a gross "purity filter" thing that tries to reparse the command line and filter out /usr paths | 09:06:56 |
emily | we have like 5 layers of defence against system paths reaching compilers | 09:07:07 |