aboutsummaryrefslogtreecommitdiff
path: root/cores/arduino/Print.cpp
diff options
context:
space:
mode:
authorMatthijs Kooijman <matthijs@stdin.nl>2013-11-20 16:55:22 +0100
committerCristian Maglie <c.maglie@bug.st>2013-12-31 20:01:40 +0100
commit1978e82e4e531b641868432727ed70b4838fc12c (patch)
tree556a520bf2fed7c9a1096a3a5d802640647fd347 /cores/arduino/Print.cpp
parent15417bab95046fa7cf165eed886e71229c7b1384 (diff)
Use PGM_P instead of prog_char
On later versions of avr-libc, prog_char is deprecated. In 0acebeeff48 the one occurence of prog_char was replaced by "char PROGMEM", which is not entirely correct (PROGMEM is supposed to be an attribute on a variable, not on a type, even though this is how things work in older libc versions). However, in 1130fede3a2 a few new occurences of prog_char are introduced, which break compilation on newer libc versions again. This commit changes all these pointer types to use the PGM_P macro from <avr/pgmspace.h>. This macro is just "const char *" in newer libc versions and "const prog_char *" in older versions, so it should always work. References #795
Diffstat (limited to 'cores/arduino/Print.cpp')
-rw-r--r--cores/arduino/Print.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/cores/arduino/Print.cpp b/cores/arduino/Print.cpp
index 9a6b964..86cac38 100644
--- a/cores/arduino/Print.cpp
+++ b/cores/arduino/Print.cpp
@@ -41,7 +41,7 @@ size_t Print::write(const uint8_t *buffer, size_t size)
size_t Print::print(const __FlashStringHelper *ifsh)
{
- const char PROGMEM *p = (const char PROGMEM *)ifsh;
+ PGM_P p = (PGM_P)ifsh;
size_t n = 0;
while (1) {
unsigned char c = pgm_read_byte(p++);