[Bug 3032] (Fixable) MIPSPro compilation errors, failing regression test in test_sshbuf_misc.c & sshd host key loading issues on IRIX 6.5

bugzilla-daemon at bugzilla.mindrot.org bugzilla-daemon at bugzilla.mindrot.org
Sat Jul 6 23:45:54 AEST 2019


https://bugzilla.mindrot.org/show_bug.cgi?id=3032

--- Comment #9 from Darren Tucker <dtucker at dtucker.net> ---
Comment on attachment 3297
  --> https://bugzilla.mindrot.org/attachment.cgi?id=3297
./configure output

[...]
>    Compiler flags: -64 -mips4 -c99 -O2 -LANG:anonymous_unions=ON -I/opt/vntg/include:/usr/include -L/opt/vntg/lib64 -L/usr/lib64  
>Preprocessor flags: -64 -c99 -O2 -LANG:anonymous_unions=ON -I/opt/vntg/include -L/opt/vntg/lib64 -L/usr/lib64

Did you explicitly give it 64bit compiler flags?  If so does omitting
them make any difference?

> cc-3968 c99: WARNING File =cc-3968 c99: WARNING File = sshbuf-getput-basic.c, Line = 307
  implicit conversion of a 64-bit integral type to a smaller integral
type
          (potential portability problem)

        POKE_U64(p, val);
        ^, Line = 307
>  implicit conversion of a 64-bit integral type to a smaller integral type
>          (potential portability problem)
>
>  	POKE_U64(p, val);
>  	^

These ones look suspicious but looking at the code and macro I don't
see what it's complaining about since the code:

sshbuf_put_u64(struct sshbuf *buf, u_int64_t val)
{
        u_char *p;
[...]
        POKE_U64(p, val);

and macro:

#define POKE_U64(p, v) \
        do { \
                const u_int64_t __v = (v); \
                ((u_char *)(p))[0] = (__v >> 56) & 0xff; \
                ((u_char *)(p))[1] = (__v >> 48) & 0xff; \
                ((u_char *)(p))[2] = (__v >> 40) & 0xff; \
                ((u_char *)(p))[3] = (__v >> 32) & 0xff; \
                ((u_char *)(p))[4] = (__v >> 24) & 0xff; \
                ((u_char *)(p))[5] = (__v >> 16) & 0xff; \
                ((u_char *)(p))[6] = (__v >> 8) & 0xff; \
                ((u_char *)(p))[7] = __v & 0xff; \
        } while (0)

only seem to refer to 64 bit integral types.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
You are watching someone on the CC list of the bug.


More information about the openssh-bugs mailing list