NAG Fortran Library, Mark 23

FLW6I23DCL - License Managed

Windows XP/Vista/7 x64, Intel Fortran

Installer's Note

Post Release Information

This implementation is applicable to computer systems described in section 2.1 of the Installer's Notes (see Installer's Notes, Applicability).

Any additional information related to this implementation, that came to light after the release of this product, is described below.

  1. Using Intel Fortran 12.1

    The libraries in this implementation have been tested with a newer version of Intel Fortran
      Intel(R) Visual Fortran Compiler XE for applications running on IA-32, Version Build 20110811
      Copyright (C) 1985-2011 Intel Corporation.  All rights reserved.
    and found to work correctly.
  2. Error in C header file nagmk23.h

    The header file c_headers\nagmk23.h helps when calling the NAG Fortran Library from C or C++ code. The copy of nagmk23.h distributed with this implementation contains an error in the definition of the NAG type "Charlen", which appears at line 46 of the file. The line
       typedef int Charlen;
    should read
       typedef __int64 Charlen;
    for this implementation.

    This error affects all NAG Fortran Library routines which contain arguments of type CHARACTER. Leaving the header file uncorrected may lead to incorrect string size arguments being passed to NAG routines, which in turn may result in a program crash.

  3. Using the DLLs from FLW6I23DCL with the Absoft Fortran Compiler

    This implementation may be used with the Absoft compiler version 11.5. Further details, examples and revised interface blocks may be found at The source of the interface blocks distributed with this implementation is correct for this implementation but needs compiling with the Absoft compiler in order to function correctly.

    The Absoft compiler does not currently handle the very long names suggested as an alternative to the traditional NAG names. If this is inconvenient then you may adjust the nag_long_names.f90 file to have shorter names and compile this.

    Alternatively Fortran 90 allows a very convenient renaming facility via the USE statement. For example:

    allows the user to refer to the NAG routine E04UCA as NAGMIN.