C++ Logo

std-proposals

Advanced search

Re: [std-proposals] Revising #pragma once

From: Tiago Freire <tmiguelf_at_[hidden]>
Date: Mon, 2 Sep 2024 12:16:54 +0000
> Well, you're the one who keeps saying "you don't need this, you don't need that, keep it simple". And other people have pointed to real existing projects where that 'simple' approach doesn't work.

So you keep saying. But I have seen 0 examples so far!



-----Original Message-----
From: Ville Voutilainen <ville.voutilainen_at_[hidden]om>
Sent: Monday, September 2, 2024 2:15 PM
To: Tiago Freire <tmiguelf_at_hotmail.com>
Cc: std-proposals_at_[hidden]ocpp.org; Tom Honermann <tom_at_honermann.net>
Subject: Re: [std-proposals] Revising #pragma once

On Mon, 2 Sept 2024 at 15:10, Tiago Freire <tmiguelf_at_hotmail.com> wrote:
>
> It's called a strawman argument. You come up with an implementation that doesn't work, point at it and say that it doesn't work. But nobody is advocating for the implementation you have happened to choose. At least I'm not.

Well, you're the one who keeps saying "you don't need this, you don't need that, keep it simple". And other people have pointed to real existing projects where that 'simple' approach doesn't work.

> And then completely overlook implementations that would actually work.
> I keep saying, you don't need this, you don't need that, but you keep insisting on over-defining an implementation to solve problems that are not problems, to accommodate workflows that don't exist.

You mean they are not problems to you? Because they are for other people. And the reports here are about workflows that certainly exist.

> You went out of your way to give it the least charitable interpretation so that you could shoot it down.

There's no interpretation that doesn't just shoot itself down. Look at paths - the same file can be reached by different paths at various points in the build. So detecting sameness based on path will fail to detect some cases of sameness. Similarly for inodes, and sometimes even mtimes. Do it by content hashing, and you have a much slower build, and you also have cases where the system detects sameness that is just a false sameness.

None of these problems are invented, imaginary, or otherwise non-problems in workflows that don't exist.

Received on 2024-09-02 12:16:57