[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Please test: scrypt 1.2.99
On Mon, Jul 01, 2019 at 09:56:24AM -0700, Colin Percival wrote:
> On 2019-07-01 09:04, Graham Percival wrote:
> > On Mon, Jul 01, 2019 at 10:07:08AM -0400, James Turner wrote:
> >> On Mon, Jul 01, 2019 at 10:04:28AM -0400, James Turner wrote:
> >>> On Sun, Jun 30, 2019 at 09:43:34PM -0700, Colin Percival wrote:
> >>> In file included from libcperciva/alg/sha256.c:7:
> >>> libcperciva/alg/sha256_shani.h:14: error: static or type qualifiers in abstract declarator
> >>
> >> I should have noted that was under gcc (GCC) 4.2.1 20070719. If I change
> >> CC to the default clang, everything compiles just fine under OpenBSD.
>
> Does this problem go away if you add -std=c99 to CFLAGS?
>
It does not. The above still fails to compile with gcc 4.2.1.
> > I remember seeing those before, but I can't immediately find the github issue.
> > The problem is that gcc 4.2.1 doesn't fully support C99. The code in question
> > is:
> >
> > static void SHA256_Transform(uint32_t[static restrict 8],
> > const uint8_t[static restrict 64], uint32_t[static restrict 64],
> > uint32_t[static restrict 8]);
> >
> > which uses the [] new features in C99. (Or rather, these were "new" features
> > 20 years ago.)
>
> We worked around a problem with some compilers which didn't understand
> 'restrict' unless they were passed -std=c99, but I don't remember running
> into systems which specifically failed with qualifiers in a function
> declaration.
>
> If -std=c99 fixes this, we should adjust posix-restrict.c.
>
> --
> Colin Percival
> Security Officer Emeritus, FreeBSD | The power to serve
> Founder, Tarsnap | www.tarsnap.com | Online backups for the truly paranoid
--
James Turner