Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

#3 pragma Intrinsic failures

v1.0 (example)
open
nobody
None
5
2014-03-30
2014-03-30
Simon Wright
No

Using FSF GCC 4.8 (and, I’m told, GNAT GPL 2013), we get compilation failures:

crypto-types.ads:108:34: first argument for shift must have size 8. 16, 32 or 64
crypto-types.ads:109:34: first argument for shift must have size 8. 16, 32 or 64
crypto-types.ads:291:30: incorrect intrinsic subprogram, see spec
crypto-types.ads:292:30: incorrect intrinsic subprogram, see spec

Having fixed this by using type Integer (‘Size is 32, vs Natural’Size of 31) there’s a further problem:

crypto-symmetric-algorithm-tripledes.ads:103:35: first argument for shift must have size 8, 16, 32 or 64
crypto-symmetric-algorithm-tripledes.ads:104:35: first argument for shift must have size 8, 16, 32 or 64
crypto-symmetric-algorithm-tripledes.ads:105:35: first argument for shift must have size 8, 16, 32 or 64
crypto-symmetric-algorithm-tripledes.ads:106:35: first argument for shift must have size 8, 16, 32 or 64
crypto-symmetric-algorithm-tripledes.ads:109:30: incorrect intrinsic subprogram, see spec
crypto-symmetric-algorithm-tripledes.ads:110:30: incorrect intrinsic subprogram, see spec
crypto-symmetric-algorithm-tripledes.ads:111:30: incorrect intrinsic subprogram, see spec
crypto-symmetric-algorithm-tripledes.ads:112:30: incorrect intrinsic subprogram, see spec

which is less easy to fix because the attempted intrinsics are for Bit6.

By the way, I’ve used a snapshot of the SVN tree and built using libadacrypt.gpr. Hope you’ll include the GPRs in the next release!

Discussion