C++ Logo

sg12

Advanced search

Re: [ub] ub due to left operand of shift

From: Gabriel Dos Reis <gdr_at_[hidden]>
Date: Thu, 24 Oct 2013 23:04:08 +0000
| -----Original Message-----
| From: ub-bounces_at_[hidden] [mailto:ub-bounces_at_[hidden]] On Behalf Of
| John Regehr
| Sent: Thursday, October 24, 2013 5:53 PM
| To: ub_at_[hidden]
| Subject: Re: [ub] ub due to left operand of shift
|
| >> c_enc.c:107:6: runtime error: shift exponent 32 is too large for 32-bit
| >> type 'unsigned int'
| > ...
| >> c_enc.c:88:6: runtime error: shift exponent 32 is too large for 32-bit
| >> type 'unsigned int'
| >
| > These are a genuine portability problem, but not related to signedness.
|
| Yes, very nasty, this code may well be broken by compilers right now. I
| should report these.

Terminology: when you say "may well be broken by compilers right now",
it suggests you think the code is correct; but then that does not go
well with the first part of your sentence...

| >> eng_table.c:349:2: runtime error: member access within null pointer of
| >> type 'ENGINE_TABLE' (aka 'struct st_engine_table')
| >> s3_srvr.c:1886:13: runtime error: index 4 out of bounds for type
| >> 'BIGNUM *[4]'
|
| Scary to see this in today's OpenSSL. I thought it was supposed to be good.

Received on 2013-10-25 01:04:37