> Setzt man ein Kommentar als Codewort hin, mit dem man diese Stellen erkennen und ausfiltern kann?
So sieht's wohl aus, hier ein Beispiel: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit /?h=v5.0&id=fa2549800c84aecb7a9559cdb3978865d1d50513
Ist dieses Codewort in der Kerneldoku irgendwo hinterlegt oder bei den Kernelentwicklern als solches bekannt und definiert oder ist das jetzt nur etwas, was jemand für sich persönlich nutzt und die Stelle nur so kennzeichnet?
Hier ist noch was dazu, unter "ongoing: implicit fall-through removal": https://outflux.net/blog/archives/2019/03/12/security-things-in-linux-v5-0/
Ich weiß nicht, ob es wirklich nötig ist, alle in Frage kommenden Stellen so zu kennzeichnen oder was das mit "Sicherheit" im engeren Sinn zu tun hat - aber wenn's hilft...
Danke für den Link. Es ist sogar ein Feature von C++17 und somit Sprachstandard, allerdings ist der Kernel natürlich in C geschrieben, weswegen das für C Code nicht gelten muss.
Doof finde ich allerdings, dass man das als eckige Klammer realisiert hat:
[[fallthrough]];
Warum nicht einfach als Keyword wie break,?
fallthrough;
Da kann man sich mit den eckige Klammern jetzt wieder die Finger brechen. IMO völlig unnötig. Wer alten Code hat, der das als Funktion nutzt, kann ja dem Compiler sagen, dass er diese fallthrough Check nicht durchführen soll oder besser gleich seinen Code anpassen soll. Das Umbenennen sollte mit jedem guten Editor und jeder brauchbaren IDE kein Problem sein.
> Setzt man ein Kommentar als Codewort hin, mit dem man diese Stellen erkennen und ausfiltern kann?
So sieht's wohl aus, hier ein Beispiel:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit
/?h=v5.0&id=fa2549800c84aecb7a9559cdb3978865d1d50513
Besten Dank.
Ist dieses Codewort in der Kerneldoku irgendwo hinterlegt oder bei den Kernelentwicklern als solches bekannt und definiert oder ist das jetzt nur etwas, was jemand für sich persönlich nutzt und die Stelle nur so kennzeichnet?
Hier ist noch was dazu, unter "ongoing: implicit fall-through removal":
https://outflux.net/blog/archives/2019/03/12/security-things-in-linux-v5-0/
Ich weiß nicht, ob es wirklich nötig ist, alle in Frage kommenden Stellen so zu kennzeichnen oder was das mit "Sicherheit" im engeren Sinn zu tun hat - aber wenn's hilft...
Ist ein Feature von gcc:
https://developers.redhat.com/blog/2017/03/10/wimplicit-fallthrough-in-gcc-7/
Danke für den Link.
Es ist sogar ein Feature von C++17 und somit Sprachstandard, allerdings ist der Kernel natürlich in C geschrieben, weswegen das für C Code nicht gelten muss.
Doof finde ich allerdings, dass man das als eckige Klammer realisiert hat:
Warum nicht einfach als Keyword wie break,?
Da kann man sich mit den eckige Klammern jetzt wieder die Finger brechen. IMO völlig unnötig.
Wer alten Code hat, der das als Funktion nutzt, kann ja dem Compiler sagen, dass er diese fallthrough Check nicht durchführen soll oder besser gleich seinen Code anpassen soll.
Das Umbenennen sollte mit jedem guten Editor und jeder brauchbaren IDE kein Problem sein.
> Da kann man sich mit den eckige Klammern jetzt wieder die Finger brechen. IMO völlig unnötig.
Tastaturbelegung ändern: Ich habe der linken Win-Taste den Wechsel in die 3. Ebene zugewiesen, das macht {[]} leichter.