Gcc'de kullanılmayan lambda ifadeleri için bir uyarıyı nasıl etkinleştiririm?
Aşağıdaki kodda , lambda ifadesini şu şekilde çağırmayı unuttuğum bir yazım hatası var ()
:
#include <iostream>
int main()
{
[]{ std::cout << "hello"; };
}
Neyse ki clang -Wunused-value
, lambda ifadesi için bir uyarı verir, çünkü hiç değerlendirilmez / kullanılmaz.
Ancak gcc herhangi bir uyarı vermez. Gcc ile derlerken bu bugy kodu hakkında uyarmanın bir yolu var mı?
Kullanılmayan lambda yakalamaları hakkında benzer bir gönderi var burada , ancak bu soru kullanılmayan lambda ifadelerinin kendileri içindir.
Yanıtlar
GCC, -Wunused
kullanılmayan kod parçaları hakkında tüm uyarıları etkinleştiren uyarı seçeneğine sahiptir. En son (gövde) GCC, seçeneklerle kullanılmayan lambda hakkında uyarmaz -Wunused -Wall -Wextra
. Bu nedenle, şu anda GCC'de gösterilen program hakkında uyaran bir uyarıyı etkinleştirmenin bir yolu olmadığı sonucuna varıyorum.