Open SinForest opened 6 years ago
ich würde keinen alias für sie anlegen wir können aber die .bashrc
erwähnen und sagen schreiben wie da aliase rein geschrieben werden
Ich würde für dieses Jahr mal einen Alias, der g++="g++ -Wall -Werror -Wextra"
gleichsetzt ausprobieren und schauen ob ein wechsel auf clang dann noch nötig ist...
Ich lasse das Issue mal noch offen bis ich die Rechner eingerichtet habe :blush:
Für das von dir beschriebene Beispiel schenkt sich das dann nämlich nichts mehr:
$ g++ test.cpp -o test
test.cpp: In function ‘int add(int, int)’:
test.cpp:2:7: warning: statement has no effect [-Wunused-value]
2 | a + b;
| ~~^~~
test.cpp:3:1: warning: no return statement in function returning non-void [-Wreturn-type]
3 | }
| ^
$ clang++ test.cpp
test.cpp:2:7: warning: expression result unused [-Wunused-value]
a + b;
~ ^ ~
test.cpp:3:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
2 warnings generated.
./test.cpp
:
int add(int a, int b){
a + b;
}
int main(int argc, char *argv[]) {
add(1,2);
return 0;
}
Dann solltest du hier darauf achten, dass das Kapitel über Warnings (aktuell 16) noch Sinn ergibt
g++ macht weirde Dinge (Stichwort: kein return in non-void functions), darum sollten wir auf (das sowieso viel bessere) clang++ umsteigen.
Da der Befehl so lang ist, könnten wir den Studis auch gleich noch einen Alias anlegen (nicht 'c++', das verwirrt nur!!).
Im Skript muss dazu vmtl fast nichts geändert werden.