Hey, you can use Dmitry's solution at compile-time, too. "-D__LINE__={int dontUseLine[-1];}"*. This will most likely trigger an parse-error, because an int is expected. And if the code does parse, it will fail at the array-length being -1. You'll still might need to turn off some warning, because you are overriding a compiler-macro.
Cheers Morty *I'm sure there are even better ways to trigger a compile time error, but this is what I came up with as a non-expert without having to think too much about corner cases. ;) Am 04.01.2020 um 03:23 schrieb Eric Curtin: > Hi Guys, > > Sorry I switched off the email for the holidays. > > I guess the problem with the linker error is, we have a distributed > build system with the linking occurring at the very end of the build > (we have a slow build, that's a different problem though). > > So it's compile time that this would be preferable like -Wdate-time > does. Would introducing a new warning be the only way to achieve this? > Other than the clever linker way below? > > On 19/12/2019, Dmitry Grinberg <dmitr...@gmail.com> wrote: >> Why not just add "-D__LINE__=LinkerError_LineMacroUsed_DoNotDoThat()" to >> CFLAGS? >> >> ---- >> Best Regards, >> Dmitry Grinberg >> >> >> On Mon, Dec 16, 2019 at 3:51 AM Eric Curtin <ericcurti...@gmail.com> wrote: >> >>> I want to add a compiler warning, if it will get accepted. It's a >>> -Wlines warning. My employer bans the __LINE__ macro as well as the >>> ones warned by the -Wdate-time warning, because there is a consensus >>> that the addition of whitespace or comments should not yield different >>> binary output for our project. Would this patch get accepted? >>> -- Redheads Ltd. Softwaredienstleistungen Schillerstr. 14 90409 Nürnberg Telefon: +49 (0)911 180778-50 E-Mail: moritz.stru...@redheads.de | Web: www.redheads.de Geschäftsführer: Andreas Hanke Sitz der Gesellschaft: Lauf Amtsgericht Nürnberg HRB 22681 Ust-ID: DE 249436843