diff --git a/libraries/AP_RCProtocol/AP_RCProtocol.h b/libraries/AP_RCProtocol/AP_RCProtocol.h index 37f46a28da6d1..bcf7038ba96bd 100644 --- a/libraries/AP_RCProtocol/AP_RCProtocol.h +++ b/libraries/AP_RCProtocol/AP_RCProtocol.h @@ -128,11 +128,13 @@ class AP_RCProtocol { _disabled_for_pulses |= (1U<<(uint8_t)protocol); } +#if !defined(__clang__) // in the case we've disabled most backends then the "return true" in // the following method can never be reached, and the compiler gets // annoyed at that. #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wswitch-unreachable" +#endif // for protocols without strong CRCs we require 3 good frames to lock on bool requires_3_frames(enum rcprotocol_t p) { @@ -203,7 +205,9 @@ class AP_RCProtocol { } return false; } +#if !defined(__clang__) #pragma GCC diagnostic pop +#endif uint8_t num_channels(); uint16_t read(uint8_t chan);