The confusion may arise from the fact that answer depends on which version of IAR you are using.
V.4x will produce a hex file if you specify in the linker options (linker-> extra output → generate extra output file → Intel-Extended). I have a feeling you may also need to override the default filename to .hex as it uses something like .a90 by default (or I may be mis-remembering this from the AVR version)
v5.x will not generate a hex file - it only uses ARM’s ELF/DWARF format. You need to use their ielftool utility to generate the hex file.
This is documented in the C/C++ Development guide
This can be automated using build actions-> post build command line to run ielftool, so it generates a hex automatically after building.