Follow-up Comment #14, patch #9543 (project avr-libc): Cristian, hello.
I just tried to compile avr-libc svn2546 with patches from avrxmega3-v6.diff.bz2. compiler gcc8.0.1 built for avr. I get some errors which are at least partly from this patch. I did not get any strange messages before this just some warnings. Also the last time I built it without the patch it looked right. Could you have a look at it? In file included from ../../../../include/avr/io.h:456, from ../../../../libc/misc/eewr_block_xmega.c:4: ../../../../include/avr/iotn1614.h:5623:1: error: unknown type name 'define' define PERIOD0 (unsigned char)~_BV(0) /* Watchdog Timeout Period Bit 0 */ ^~~~~~ ../../../../include/avr/iotn1614.h: In function 'PERIOD0': ../../../../include/avr/iotn1614.h:5623:32: error: expected declaration specifiers before '~' token define PERIOD0 (unsigned char)~_BV(0) /* Watchdog Timeout Period Bit 0 */ ^ In file included from ../../../../include/avr/io.h:626, from ../../../../libc/misc/eewr_block_xmega.c:4: ../../../../include/avr/fuse.h:234:3: error: expected declaration specifiers before '__fuse_t' } __fuse_t; ^~~~~~~~ In file included from ../../../../include/stdlib.h:48, from ../../../../include/assert.h:65, from ../../../../libc/misc/eewr_block_xmega.c:8: /home/jan/programs-8/avrada/lib/gcc/avr/8.0.1/include/stddef.h:216:23: error: storage class specified for parameter 'size_t' typedef __SIZE_TYPE__ size_t; ^~~~~~ /home/jan/programs-8/avrada/lib/gcc/avr/8.0.1/include/stddef.h:328:24: error: storage class specified for parameter 'wchar_t' typedef __WCHAR_TYPE__ wchar_t; ^~~~~~~ In file included from ../../../../include/assert.h:65, from ../../../../libc/misc/eewr_block_xmega.c:8: ../../../../include/stdlib.h:73:3: error: storage class specified for parameter 'div_t' } div_t; ^~~~~ ../../../../include/stdlib.h:79:3: error: storage class specified for parameter 'ldiv_t' } ldiv_t; ^~~~~~ ../../../../include/stdlib.h:82:15: error: storage class specified for parameter '__compar_fn_t' typedef int (*__compar_fn_t)(const void *, const void *); ^~~~~~~~~~~~~ ../../../../include/stdlib.h:116:13: error: storage class specified for parameter 'abort' extern void abort(void) __ATTR_NORETURN__; ^~~~~ ../../../../include/stdlib.h:121:12: error: storage class specified for parameter 'abs' extern int abs(int __i) __ATTR_CONST__; ^~~ ../../../../include/stdlib.h:130:13: error: storage class specified for parameter 'labs' extern long labs(long __i) __ATTR_CONST__; ^~~~ ../../../../include/stdlib.h:153:61: error: expected declaration specifiers or '...' before 'size_t' extern void *bsearch(const void *__key, const void *__base, size_t __nmemb, ^~~~~~ ../../../../include/stdlib.h:154:8: error: expected declaration specifiers or '...' before 'size_t' size_t __size, int (*__compar)(const void *, const void *)); ^~~~~~ ../../../../include/stdlib.h:162:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'div' extern div_t div(int __num, int __denom) __asm__("__divmodhi4") __ATTR_CONST__; ^~~ ../../../../include/stdlib.h:168:15: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ldiv' extern ldiv_t ldiv(long __num, long __denom) __asm__("__divmodsi4") __ATTR_CONST__; ^~~~ ../../../../include/stdlib.h:185:33: error: expected declaration specifiers or '...' before 'size_t' extern void qsort(void *__base, size_t __nmemb, size_t __size, ^~~~~~ ../../../../include/stdlib.h:185:49: error: expected declaration specifiers or '...' before 'size_t' extern void qsort(void *__base, size_t __nmemb, size_t __size, ^~~~~~ ../../../../include/stdlib.h:186:5: error: expected declaration specifiers or '...' before '__compar_fn_t' __compar_fn_t __compar); ^~~~~~~~~~~~~ ../../../../include/stdlib.h:218:13: error: storage class specified for parameter 'strtol' extern long strtol(const char *__nptr, char **__endptr, int __base); ^~~~~~ ../../../../include/stdlib.h:252:22: error: storage class specified for parameter 'strtoul' extern unsigned long strtoul(const char *__nptr, char **__endptr, int __base); ^~~~~~~ ../../../../include/stdlib.h:264:13: error: storage class specified for parameter 'atol' extern long atol(const char *__s) __ATTR_PURE__; ^~~~ ../../../../include/stdlib.h:264:1: warning: 'pure' attribute ignored [-Wattributes] extern long atol(const char *__s) __ATTR_PURE__; ^~~~~~ ../../../../include/stdlib.h:276:12: error: storage class specified for parameter 'atoi' extern int atoi(const char *__s) __ATTR_PURE__; ^~~~ ../../../../include/stdlib.h:276:1: warning: 'pure' attribute ignored [-Wattributes] extern int atoi(const char *__s) __ATTR_PURE__; ^~~~~~ ../../../../include/stdlib.h:288:13: error: storage class specified for parameter 'exit' extern void exit(int __status) __ATTR_NORETURN__; ^~~~ ../../../../include/stdlib.h:300:21: error: expected declaration specifiers or '...' before 'size_t' extern void *malloc(size_t __size) __ATTR_MALLOC__; ^~~~~~ ../../../../include/stdlib.h:307:13: error: storage class specified for parameter 'free' extern void free(void *__ptr); ^~~~ ../../../../include/stdlib.h:312:15: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__malloc_margin' extern size_t __malloc_margin; ^~~~~~~~~~~~~~~ ../../../../include/stdlib.h:317:14: error: storage class specified for parameter '__malloc_heap_start' extern char *__malloc_heap_start; ^~~~~~~~~~~~~~~~~~~ ../../../../include/stdlib.h:322:14: error: storage class specified for parameter '__malloc_heap_end' extern char *__malloc_heap_end; ^~~~~~~~~~~~~~~~~ ../../../../include/stdlib.h:329:21: error: expected declaration specifiers or '...' before 'size_t' extern void *calloc(size_t __nele, size_t __size) __ATTR_MALLOC__; ^~~~~~ ../../../../include/stdlib.h:329:36: error: expected declaration specifiers or '...' before 'size_t' extern void *calloc(size_t __nele, size_t __size) __ATTR_MALLOC__; ^~~~~~ ../../../../include/stdlib.h:348:35: error: expected declaration specifiers or '...' before 'size_t' extern void *realloc(void *__ptr, size_t __size) __ATTR_MALLOC__; ^~~~~~ ../../../../include/stdlib.h:350:15: error: storage class specified for parameter 'strtod' extern double strtod(const char *__nptr, char **__endptr); ^~~~~~ ../../../../include/stdlib.h:361:15: error: storage class specified for parameter 'atof' extern double atof(const char *__nptr); ^~~~ ../../../../include/stdlib.h:383:12: error: storage class specified for parameter 'rand' extern int rand(void); ^~~~ ../../../../include/stdlib.h:387:13: error: storage class specified for parameter 'srand' extern void srand(unsigned int __seed); ^~~~~ ../../../../include/stdlib.h:394:12: error: storage class specified for parameter 'rand_r' extern int rand_r(unsigned long *__ctx); ^~~~~~ ../../../../include/stdlib.h:430:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token { ^ ../../../../include/stdlib.h:475:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token { ^ ../../../../include/stdlib.h:518:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token { ^ ../../../../include/stdlib.h:560:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token { ^ ../../../../include/stdlib.h:590:13: error: storage class specified for parameter 'random' extern long random(void); ^~~~~~ ../../../../include/stdlib.h:595:13: error: storage class specified for parameter 'srandom' extern void srandom(unsigned long __seed); ^~~~~~~ ../../../../include/stdlib.h:603:13: error: storage class specified for parameter 'random_r' extern long random_r(unsigned long *__ctx); ^~~~~~~~ ../../../../include/stdlib.h:649:14: error: storage class specified for parameter 'dtostre' extern char *dtostre(double __val, char *__s, unsigned char __prec, ^~~~~~~ ../../../../include/stdlib.h:666:14: error: storage class specified for parameter 'dtostrf' extern char *dtostrf(double __val, signed char __width, ^~~~~~~ ../../../../include/stdlib.h:685:12: error: storage class specified for parameter 'atexit' extern int atexit(void (*)(void)); ^~~~~~ ../../../../include/stdlib.h:686:12: error: storage class specified for parameter 'system' extern int system (const char *); ^~~~~~ ../../../../include/stdlib.h:687:14: error: storage class specified for parameter 'getenv' extern char *getenv (const char *); ^~~~~~ In file included from ../../../../libc/misc/eewr_block_xmega.c:8: ../../../../include/assert.h:110:13: error: storage class specified for parameter '__assert' extern void __assert(const char *__func, const char *__file, ^~~~~~~~ In file included from ../../../../include/avr/eeprom.h:50, from ../../../../libc/misc/eewr_block_xmega.c:10: /home/jan/programs-8/avrada/lib/gcc/avr/8.0.1/include/stddef.h:149:26: error: storage class specified for parameter 'ptrdiff_t' typedef __PTRDIFF_TYPE__ ptrdiff_t; ^~~~~~~~~ /home/jan/programs-8/avrada/lib/gcc/avr/8.0.1/include/stddef.h:437:3: error: storage class specified for parameter 'max_align_t' } max_align_t; ^~~~~~~~~~~ In file included from ../../../../libc/misc/eewr_block_xmega.c:10: ../../../../include/avr/eeprom.h:137:1: warning: 'pure' attribute ignored [-Wattributes] uint8_t eeprom_read_byte (const uint8_t *__p) __ATTR_PURE__; ^~~~~~~ ../../../../include/avr/eeprom.h:142:1: warning: 'pure' attribute ignored [-Wattributes] uint16_t eeprom_read_word (const uint16_t *__p) __ATTR_PURE__; ^~~~~~~~ ../../../../include/avr/eeprom.h:147:1: warning: 'pure' attribute ignored [-Wattributes] uint32_t eeprom_read_dword (const uint32_t *__p) __ATTR_PURE__; ^~~~~~~~ ../../../../include/avr/eeprom.h:152:1: warning: 'pure' attribute ignored [-Wattributes] float eeprom_read_float (const float *__p) __ATTR_PURE__; ^~~~~ ../../../../include/avr/eeprom.h:158:57: error: expected declaration specifiers or '...' before 'size_t' void eeprom_read_block (void *__dst, const void *__src, size_t __n); ^~~~~~ ../../../../include/avr/eeprom.h:185:58: error: expected declaration specifiers or '...' before 'size_t' void eeprom_write_block (const void *__src, void *__dst, size_t __n); ^~~~~~ ../../../../include/avr/eeprom.h:212:59: error: expected declaration specifiers or '...' before 'size_t' void eeprom_update_block (const void *__src, void *__dst, size_t __n); ^~~~~~ ../../../../libc/misc/eewr_block_xmega.c:55:13: error: storage class specified for parameter 'ccp_write_io' extern void ccp_write_io (volatile uint8_t *__ioaddr, uint8_t __value); ^~~~~~~~~~~~ In file included from ../../../../libc/misc/eewr_block_xmega.c:9: ../../../../common/sectionname.h:43:33: error: expected declaration specifiers before '__attribute__' #define ATTRIBUTE_CLIB_SECTION __attribute__ ((section (STR(CLIB_SECTION)))) ^~~~~~~~~~~~~ ../../../../libc/misc/eewr_block_xmega.c:57:1: note: in expansion of macro 'ATTRIBUTE_CLIB_SECTION' ATTRIBUTE_CLIB_SECTION ^~~~~~~~~~~~~~~~~~~~~~ ../../../../common/sectionname.h:43:33: error: expected declaration specifiers before '__attribute__' #define ATTRIBUTE_CLIB_SECTION __attribute__ ((section (STR(CLIB_SECTION)))) ^~~~~~~~~~~~~ ../../../../libc/misc/eewr_block_xmega.c:93:1: note: in expansion of macro 'ATTRIBUTE_CLIB_SECTION' ATTRIBUTE_CLIB_SECTION ^~~~~~~~~~~~~~~~~~~~~~ In file included from ../../../../include/avr/io.h:456, from ../../../../libc/misc/eewr_block_xmega.c:4: ../../../../include/avr/iotn1614.h:5623:8: error: old-style parameter declarations in prototyped function definition define PERIOD0 (unsigned char)~_BV(0) /* Watchdog Timeout Period Bit 0 */ ^~~~~~~ ../../../../include/avr/iotn1614.h:5623:18: error: parameter name omitted define PERIOD0 (unsigned char)~_BV(0) /* Watchdog Timeout Period Bit 0 */ ^~~~~~~~~~~~~ ../../../../libc/misc/eewr_block_xmega.c:120: error: expected '{' at end of input ../../../../libc/misc/eewr_block_xmega.c:116:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ Makefile:632: recipe for target 'eewr_block_xmega.o' failed Cheers, Jan. _______________________________________________________ Reply to this item at: <http://savannah.nongnu.org/patch/?9543> _______________________________________________ Message sent via/by Savannah http://savannah.nongnu.org/ _______________________________________________ AVR-libc-dev mailing list AVR-libc-dev@nongnu.org https://lists.nongnu.org/mailman/listinfo/avr-libc-dev