Hello !

I'm experiencing a kind of compiler infinte loop when trying to compile sha1 extension (it seems like the macros problem for shathree).


The compiler seems to enter an infinite loop. If I avoid using "asm" it compiles fine.

#if __GNUC__ && (defined(__i386__) || defined(__x86_64__)) && !defined(NO_ASM) ///add && !defined(NO_ASM)

Has someone experiencing this problem ?

=====

/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c: In function 'SHA1Transform': /vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218953:5: warning: implicit declaration of function 'asm' [-Wimplicit-function-declaration]      Rl0(a,b,c,d,e, 0); Rl0(e,a,b,c,d, 1); Rl0(d,e,a,b,c, 2); Rl0(c,d,e,a,b, 3);
     ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218889:44: error: expected ')' before ':' token          ({ unsigned int y; asm(op " %1,%0" : "=r" (y) : "I" (k), "0" (x)); y; })
                                            ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218891:18: note: in expansion of macro 'SHA_ROT'
 #define ror(x,k) SHA_ROT("rorl", x, k)
                  ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218901:32: note: in expansion of macro 'ror'
 #define blk0le(i) (block[i] = (ror(block[i],8)&0xFF00FF00) \
                                ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218914:22: note: in expansion of macro 'blk0le'
z+=((w&(x^y))^y)+blk0le(i)+0x5A827999+rol(v,5);w=ror(w,2);
                      ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218953:5: note: in expansion of macro 'Rl0'      Rl0(a,b,c,d,e, 0); Rl0(e,a,b,c,d, 1); Rl0(d,e,a,b,c, 2); Rl0(c,d,e,a,b, 3);
     ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218889:44: error: expected ')' before ':' token          ({ unsigned int y; asm(op " %1,%0" : "=r" (y) : "I" (k), "0" (x)); y; })
                                            ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218890:18: note: in expansion of macro 'SHA_ROT'
 #define rol(x,k) SHA_ROT("roll", x, k)
                  ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218902:7: note: in expansion of macro 'rol'
     |(rol(block[i],8)&0x00FF00FF))
       ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218914:22: note: in expansion of macro 'blk0le'
z+=((w&(x^y))^y)+blk0le(i)+0x5A827999+rol(v,5);w=ror(w,2);
                      ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218953:5: note: in expansion of macro 'Rl0'      Rl0(a,b,c,d,e, 0); Rl0(e,a,b,c,d, 1); Rl0(d,e,a,b,c, 2); Rl0(c,d,e,a,b, 3);
     ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218889:44: error: expected ')' before ':' token          ({ unsigned int y; asm(op " %1,%0" : "=r" (y) : "I" (k), "0" (x)); y; })
                                            ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218890:18: note: in expansion of macro 'SHA_ROT'
 #define rol(x,k) SHA_ROT("roll", x, k)
                  ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218914:43: note: in expansion of macro 'rol'
z+=((w&(x^y))^y)+blk0le(i)+0x5A827999+rol(v,5);w=ror(w,2);
                                           ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218953:5: note: in expansion of macro 'Rl0'      Rl0(a,b,c,d,e, 0); Rl0(e,a,b,c,d, 1); Rl0(d,e,a,b,c, 2); Rl0(c,d,e,a,b, 3);
     ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218889:44: error: expected ')' before ':' token          ({ unsigned int y; asm(op " %1,%0" : "=r" (y) : "I" (k), "0" (x)); y; })
                                            ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218891:18: note: in expansion of macro 'SHA_ROT'
 #define ror(x,k) SHA_ROT("rorl", x, k)
                  ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218914:54: note: in expansion of macro 'ror'
z+=((w&(x^y))^y)+blk0le(i)+0x5A827999+rol(v,5);w=ror(w,2);
                                                      ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218953:5: note: in expansion of macro 'Rl0'      Rl0(a,b,c,d,e, 0); Rl0(e,a,b,c,d, 1); Rl0(d,e,a,b,c, 2); Rl0(c,d,e,a,b, 3);
     ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218889:44: error: expected ')' before ':' token          ({ unsigned int y; asm(op " %1,%0" : "=r" (y) : "I" (k), "0" (x)); y; })
                                            ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218891:18: note: in expansion of macro 'SHA_ROT'
 #define ror(x,k) SHA_ROT("rorl", x, k)
                  ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218901:32: note: in expansion of macro 'ror'
 #define blk0le(i) (block[i] = (ror(block[i],8)&0xFF00FF00) \
                                ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218914:22: note: in expansion of macro 'blk0le'
z+=((w&(x^y))^y)+blk0le(i)+0x5A827999+rol(v,5);w=ror(w,2);
                      ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218953:24: note: in expansion of macro 'Rl0'      Rl0(a,b,c,d,e, 0); Rl0(e,a,b,c,d, 1); Rl0(d,e,a,b,c, 2); Rl0(c,d,e,a,b, 3);
                        ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218889:44: error: expected ')' before ':' token          ({ unsigned int y; asm(op " %1,%0" : "=r" (y) : "I" (k), "0" (x)); y; })
                                            ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218890:18: note: in expansion of macro 'SHA_ROT'
 #define rol(x,k) SHA_ROT("roll", x, k)
                  ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218902:7: note: in expansion of macro 'rol'
     |(rol(block[i],8)&0x00FF00FF))
       ^
/vdata/db-api-server-presentation/../SquiLu-ext/sqlite3.c:218914:22: note: in expansion of macro 'blk0le'
z+=((w&(x^y))^y)+blk0le(i)+0x5A827999+rol(v,5);w=ror(w,2);

=====

_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to