No 16 Bytes Integer?

No 16 Bytes Integer?

Doesn't ifort support 16 bytes integers?

The lines

  print *, selected_int_kind(1)
  print *, selected_int_kind(4)
  print *, selected_int_kind(8)
  print *, selected_int_kind(16)
  print *, selected_int_kind(32)
  print *, selected_int_kind(64)
  print *, huge(0_1)
  print *, huge(0_2)
  print *, huge(0_4)
  print *, huge(0_8)
  print *, huge(0_16)

Compile fine with gfortran but give the error 

error #6684: This is an incorrect value for a kind type parameter in this context. [16]
print *, huge(0_16)

for ifort 12.1.5 20120612.

Also, what happened to the syntax highlighter of the forums? (I personally dislike this new layout, any way to drop back to the old one?)

4 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.
Best Reply

No, Intel compilers don't support 16-byte integers. I suppose among the reasons for considering it would be existence of important applications (commercial or open source) which use it, and fuller support of wide integer operations in future instruction sets.
I notice that 16-byte integer support is a configure option in gfortran, haven't checked whether it's included in versions such as mingw. (Remember, even mingw requires Microsoft library support for all the data types). There's less of a requirement to make gfortran for Windows and linux work alike.
According to gfortran documentation, there aren't automatic promotion options to use integer-16 in place of integer-8 such as there are for floating point data types.

The syntax highlighter is being reworked.

Retired 12/31/2016

Thank you TimP and Steve Lionel for your answer.

Leave a Comment

Please sign in to add a comment. Not a member? Join today