summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLeo C2016-08-25 08:36:04 +0200
committerLeo C2016-08-25 08:36:04 +0200
commita4f40a904ef9475b007e650c2ac501d16346feb1 (patch)
treee371355f4baf5f18012e9839e81c083eaffa6059
parent3f88ef88f347c2c2d7a77db9faab6652dd9c9042 (diff)
downloadz180-stamp-a4f40a904ef9475b007e650c2ac501d16346feb1.zip
avr/z180-serv.c: Workaround for GCC bug PR61443
-rw-r--r--avr/z180-serv.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/avr/z180-serv.c b/avr/z180-serv.c
index 9cf59f8..d1f52dd 100644
--- a/avr/z180-serv.c
+++ b/avr/z180-serv.c
@@ -415,10 +415,17 @@ void msg_cpm_result(uint8_t subf, uint8_t rc, int res)
msg_xmit(2, subf, sizeof(result_msg), result_msg);
- if (rc)
+ if (rc) {
+#if GCC_BUG_61443
+ char msg[40];
+ strncpy_P(msg, rc_messages[rc & 0x7f], sizeof msg -1);
+ drv_debug(END, PSTR(" rc: %.02x/%d, '%s'"),
+ rc, res, msg);
+#else
drv_debug(END, PSTR(" rc: %.02x/%d, '%S'"),
rc, res, rc_messages[rc & 0x7f]);
- else
+#endif
+ } else
drv_debug(END, PSTR(""));
}