Obecnie pracuję nad dość dużym projektem. Aby podnieść jakość naszego kodu, zdecydowaliśmy się na egzekwowanie wartości zwracanych (Kody błędów) dla każdej funkcji. GCC obsługuje ostrzeżenie dotyczące zwracanej wartości funkcji, jednak definicja funkcji musi być poprzedzona następującą flagą.Znajdowanie i modyfikowanie definicji funkcji (C++) za pomocą skryptu bash
static __attribute__((warn_unused_result)) ErrorCode test() { /* code goes here */ }
Chcę zaimplementować bashscript który analizuje cały kod źródłowy i wysyła ostrzeżenie w przypadku
__attribute__((warn_unused_result))
brakuje. Należy pamiętać, że wszystkie funkcje wymagające tego rodzaju modyfikacji zwracają typ o nazwie ErrorCode. Czy myślisz, że jest to możliwe za pośrednictwem skryptu bash?
Polecam, aby rozważyć pisanie to jako plugin dzyń. Napisałem wtyczkę, która analizuje użycie symbolu i ostrzega o tym, że bezużyteczne zawiera około 350 linii kodu, więc nie jest to szczególnie trudne. –