Newest at the top
| 2026-04-03 21:01:23 +0000 | <tomsmeding> | I agree that -Wunused-bindings and -Wunused-imports are nothing but in the way while you're working |
| 2026-04-03 21:01:18 +0000 | <absurdvoid> | I find it helpful to have a "dev" mode where a lot of warnings/errors are disabled for quicker iteration. Can be toggled with a flag. |
| 2026-04-03 20:59:53 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-04-03 20:59:17 +0000 | <dolio> | The annoying stuff is when you're working. |
| 2026-04-03 20:58:49 +0000 | <dolio> | Actually -W is probably okay as a pass before something public. |
| 2026-04-03 20:58:48 +0000 | <geekosaur> | And was never updated for ANSI C |
| 2026-04-03 20:58:14 +0000 | jmcantrell_ | (~weechat@user/jmcantrell) (Ping timeout: 245 seconds) |
| 2026-04-03 20:57:37 +0000 | raelie | (~raelie@user/raelie) raelie |
| 2026-04-03 20:57:37 +0000 | raelie | (~raelie@2a06:5904:11c4:b000:148b:d28e:318a:8d84) (Changing host) |
| 2026-04-03 20:57:37 +0000 | raelie | (~raelie@2a06:5904:11c4:b000:148b:d28e:318a:8d84) |
| 2026-04-03 20:57:26 +0000 | <geekosaur> | It was an AT&T UNIXism |
| 2026-04-03 20:57:01 +0000 | <geekosaur> | Oh |
| 2026-04-03 20:56:50 +0000 | <geekosaur> | lint is long gone, that's why it's compiler warnings now |
| 2026-04-03 20:56:40 +0000 | <tomsmeding> | geekosaur: I think you mean -Wtype-defaults there, which is in -Wall |
| 2026-04-03 20:56:03 +0000 | <geekosaur> | `-Wdefault` can be annoying when there are cases where it's hard to avoid defaulting |
| 2026-04-03 20:55:52 +0000 | <monochrom> | Forgetting that the whole reason C's lint exists is because, for example, of the stupid C syntax design such that you intend "if (x == y)" but you mistype it as "if (x = y)". |
| 2026-04-03 20:55:10 +0000 | <tomsmeding> | not to be confused with gcc's -Wextra, which is even more than its -Wall |
| 2026-04-03 20:55:04 +0000 | <dolio> | I think some beyond that are probably worth enabling, but even -W has some stuff I'm not a huge fan of. |
| 2026-04-03 20:55:01 +0000 | <tomsmeding> | then there is -Wextra, which is in between -Wdefault and -Wall |
| 2026-04-03 20:54:56 +0000 | <monochrom> | My tangential sideways peeve is that people blindly believe in hlint just because C's lint (totally unrelated) is a really good idea. |
| 2026-04-03 20:54:06 +0000 | <tomsmeding> | yes |
| 2026-04-03 20:53:58 +0000 | <dolio> | -Wdefault looks okay. But that's what's actually on by default, right? |
| 2026-04-03 20:53:55 +0000 | <geekosaur> | Point being, C is a very different ecosystem |
| 2026-04-03 20:52:21 +0000 | <geekosaur> | In the case of gcc a lot of it is older sources and the rest is things known to trip unsuspecting programmers |
| 2026-04-03 20:51:19 +0000 | <tomsmeding> | ( https://downloads.haskell.org/ghc/latest/docs/users_guide/using-warnings.html#ghc-flag-Wdefault ) |
| 2026-04-03 20:51:15 +0000 | <tomsmeding> | dolio: would -Wdefault do? Or is perhaps -Winaccessible-code too much? |
| 2026-04-03 20:49:04 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 2026-04-03 20:48:32 +0000 | <Leary> | Global coherence and modularity are at odds; responsibility for their coexistence should fall to the language or packaging system. I can't blame 'aeson' for not wanting to write a bunch of orphans---they really shouldn't have to. Hell, they shouldn't even be /allowed/ to. |
| 2026-04-03 20:47:33 +0000 | <dolio> | I don't do much C, so I don't know about gcc's choices. |
| 2026-04-03 20:47:16 +0000 | <dolio> | GHC. |
| 2026-04-03 20:47:06 +0000 | <tomsmeding> | dolio: you mean GHC's -Wall, or also gcc's -Wall? |
| 2026-04-03 20:46:47 +0000 | <dolio> | It'd have to be trimmed way back, at least. |
| 2026-04-03 20:44:52 +0000 | <dolio> | I'm not sure any -Wall would be something that I'd endorse, because there are just too many people eager to follow arbitrary coding conventions that trade one error for another, at least in Haskell. |
| 2026-04-03 20:44:06 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-04-03 20:43:45 +0000 | <tomsmeding> | -Wall not having all warnings, just the generally important ones, is a historical naming error that we're unlikely to be correcting now |
| 2026-04-03 20:42:56 +0000 | <dolio> | It seems odd to not want all the warnings in -Wall, even though it still doesn't have all the warnings. |
| 2026-04-03 20:38:47 +0000 | <geekosaur> | and I have in fact heard people respond to your complaint with "so why is it in `-Wall`?" |
| 2026-04-03 20:38:24 +0000 | <geekosaur> | part of the problem there is people being trained by gcc/g++ where it's usually a good idea |
| 2026-04-03 20:36:36 +0000 | takuan | (~takuan@d8D86B9E9.access.telenet.be) (Ping timeout: 255 seconds) |
| 2026-04-03 20:35:28 +0000 | <dolio> | Just in general. |
| 2026-04-03 20:35:16 +0000 | <dolio> | Part of the problem is people unthinkinly obeying stuff in -Wall. |
| 2026-04-03 20:34:14 +0000 | <tomsmeding> | good, question resolved, it's aeson's problem :p |
| 2026-04-03 20:33:59 +0000 | <tomsmeding> | agreed |
| 2026-04-03 20:33:52 +0000 | <dolio> | And the rule should mean that random other idiots shouldn't be writing orphan instances for aeson. |
| 2026-04-03 20:33:36 +0000 | <dolio> | It seems like it should be okay for aeson to separate a canonical package out with orphan quick check instances. |
| 2026-04-03 20:33:26 +0000 | <tomsmeding> | but yeah, here I'm really at a loss why there isn't `aeson` and then `aeson-quickcheck` which gives the Arbitrary instances, apart from blowing up the number of tiny packages on Hackage |
| 2026-04-03 20:33:19 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-04-03 20:32:47 +0000 | <tomsmeding> | (which is conventionally weakened to at least "no orphan instances in libraries", because in leaf applications they don't really hurt) |
| 2026-04-03 20:32:44 +0000 | <geekosaur> | I feel like it should be possible to declare exceptions |
| 2026-04-03 20:32:25 +0000 | <dolio> | I don't. |