diff options
author | tmk <nobody@nowhere> | 2013-05-20 22:42:29 +0900 |
---|---|---|
committer | tmk <nobody@nowhere> | 2013-05-21 10:16:55 +0900 |
commit | 796defa86c3e8a756b66937f5c010640eeac2d13 (patch) | |
tree | 57a2ee4e96291eb23fbfb4d7553b2ee12430001a /common | |
parent | adbd15d5bdbd5f28657d0fa0ecdcf25768b4267d (diff) |
Fix deprecated 'prog_*' typedef - Issue #34
- Remove prog_char from xpritnf
- Remove prog_macro_t from acton_macro
avr-libc-1.8 removed 'prog_*' typedef because the usage of
the __progmem__ attribute on a type is not supported in GCC.
http://www.nongnu.org/avr-libc/changes-1.8.html
Diffstat (limited to 'common')
-rw-r--r-- | common/action.h | 2 | ||||
-rw-r--r-- | common/action_macro.c | 2 | ||||
-rw-r--r-- | common/action_macro.h | 5 | ||||
-rw-r--r-- | common/keymap.c | 2 | ||||
-rw-r--r-- | common/xprintf.S | 8 | ||||
-rw-r--r-- | common/xprintf.h | 8 |
6 files changed, 13 insertions, 14 deletions
diff --git a/common/action.h b/common/action.h index 98c4ef81a6..8f1f5b7986 100644 --- a/common/action.h +++ b/common/action.h @@ -50,7 +50,7 @@ void action_exec(keyevent_t event); action_t action_for_key(uint8_t layer, key_t key); /* macro */ -const prog_macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt); +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt); /* user defined special function */ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt); diff --git a/common/action_macro.c b/common/action_macro.c index 71d1506f5c..29cfd23df1 100644 --- a/common/action_macro.c +++ b/common/action_macro.c @@ -28,7 +28,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #ifndef NO_ACTION_MACRO #define MACRO_READ() (macro = pgm_read_byte(macro_p++)) -void action_macro_play(const prog_macro_t *macro_p) +void action_macro_play(const macro_t *macro_p) { macro_t macro = END; uint8_t interval = 0; diff --git a/common/action_macro.h b/common/action_macro.h index ee5c7c4266..eea8ef57d1 100644 --- a/common/action_macro.h +++ b/common/action_macro.h @@ -21,15 +21,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MACRO_NONE 0 -#define MACRO(...) ({ static prog_macro_t _m[] PROGMEM = { __VA_ARGS__ }; _m; }) +#define MACRO(...) ({ static const macro_t __m[] PROGMEM = { __VA_ARGS__ }; &__m[0]; }) typedef uint8_t macro_t; -typedef macro_t prog_macro_t PROGMEM; #ifndef NO_ACTION_MACRO -void action_macro_play(const prog_macro_t *macro); +void action_macro_play(const macro_t *macro_p); #else #define action_macro_play(macro) #endif diff --git a/common/keymap.c b/common/keymap.c index 8e2b8607c8..cf4711bf66 100644 --- a/common/keymap.c +++ b/common/keymap.c @@ -106,7 +106,7 @@ action_t action_for_key(uint8_t layer, key_t key) /* Macro */ __attribute__ ((weak)) -const prog_macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { return MACRO_NONE; } diff --git a/common/xprintf.S b/common/xprintf.S index b5a97b20a9..0cec70ce22 100644 --- a/common/xprintf.S +++ b/common/xprintf.S @@ -80,7 +80,7 @@ xputc: ;---------------------------------------------------------------------------
; Direct ROM string output
;
-;Prototype: void xputs (const prog_char *str // rom string to be output
+;Prototype: void xputs (const char *str_p // rom string to be output
; );
.func xputs
@@ -179,9 +179,9 @@ xitoa: ; Formatted string output (16/32bit version)
;
;Prototype:
-; void xprintf (const prog_char *format, ...);
-; void xsprintf(char*, const prog_char *format, ...);
-; void xfprintf(void(*func)(char), const prog_char *format, ...);
+; void __xprintf (const char *format_p, ...);
+; void __xsprintf(char*, const char *format_p, ...);
+; void __xfprintf(void(*func)(char), const char *format_p, ...);
;
#if USE_XPRINTF
diff --git a/common/xprintf.h b/common/xprintf.h index cddec99409..f58bca817b 100644 --- a/common/xprintf.h +++ b/common/xprintf.h @@ -23,7 +23,7 @@ void xputc(char chr); /*-----------------------------------------------------------------------------*/
-void xputs(const prog_char *string);
+void xputs(const char *string_p);
/* The string placed in the ROM is forwarded to xputc() directly.
*/
@@ -51,9 +51,9 @@ void xitoa(long value, char radix, char width); #define xsprintf(str, format, ...) __xsprintf(str, PSTR(format), ##__VA_ARGS__)
#define xfprintf(func, format, ...) __xfprintf(func, PSTR(format), ##__VA_ARGS__)
-void __xprintf(const prog_char *format, ...); /* Send formatted string to the registered device */
-void __xsprintf(char*, const prog_char *format, ...); /* Put formatted string to the memory */
-void __xfprintf(void(*func)(uint8_t), const prog_char *format, ...); /* Send formatted string to the specified device */
+void __xprintf(const char *format_p, ...); /* Send formatted string to the registered device */
+void __xsprintf(char*, const char *format_p, ...); /* Put formatted string to the memory */
+void __xfprintf(void(*func)(uint8_t), const char *format_p, ...); /* Send formatted string to the specified device */
/* Format string is placed in the ROM. The format flags is similar to printf().
|