diff --git a/NEWS b/NEWS
index 49b8568d9..5801b90bd 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,5 @@
 ver 0.20.4 (not yet released)
+* workaround for GCC 4.9 "constexpr" bug
 
 ver 0.20.3 (2017/01/25)
 * protocol
diff --git a/src/pcm/SampleFormat.hxx b/src/pcm/SampleFormat.hxx
index 25e6352b6..9ac2c8dab 100644
--- a/src/pcm/SampleFormat.hxx
+++ b/src/pcm/SampleFormat.hxx
@@ -64,7 +64,10 @@ enum class SampleFormat : uint8_t {
 /**
  * Checks whether the sample format is valid.
  */
-static constexpr inline bool
+#if !GCC_OLDER_THAN(5,0)
+constexpr
+#endif
+static inline bool
 audio_valid_sample_format(SampleFormat format)
 {
 	switch (format) {
@@ -83,7 +86,10 @@ audio_valid_sample_format(SampleFormat format)
 	return false;
 }
 
-static constexpr inline unsigned
+#if !GCC_OLDER_THAN(5,0)
+constexpr
+#endif
+static inline unsigned
 sample_format_size(SampleFormat format)
 {
 	switch (format) {