BlueM.Sim compilation: Difference between revisions

From BlueM
Jump to navigation Jump to search
No edit summary
(Intel Fortran 9.1)
Line 1: Line 1:
==Allgemeine Einstellungen==
Compiler-Einstellungen (''Flags''), die zur erfolgreichen Kompilierung erforderlich sind.
Compiler-Einstellungen (''Flags''), die zur erfolgreichen Kompilierung erforderlich sind.


*Damit Intel Fortran bei unformatierten Dateien die Record-Länge als bytes und nicht als 4-byte Einheiten (longwords) interpretiert, muss folgender Flag gesetzt werden:<br/>"Use Bytes as RECL unit for unformatted files" (siehe Bild) [[Bild:RECLinBytes.jpg|thumb|Use Bytes as RECL]]
*Damit Intel Fortran bei unformatierten Dateien die Record-Länge als bytes und nicht als 4-byte Einheiten (longwords) interpretiert, muss folgender Flag gesetzt werden:<br/>"Use Bytes as RECL unit for unformatted files" (siehe Bild) [[Bild:RECLinBytes.jpg|thumb|Use Bytes as RECL]]
==Intel Fortran 9.1==
Aus den Release notes:
<blockquote>
Constants Are Now Read-Only
Constants, including literals and named constants (<code>PARAMETER</code>), are now allocated in a memory section that is protected against write access. This means that if a constant is passed as an actual argument to a procedure and the procedure tries to modify the argument, an access violation will result. For example:
<pre>
call sub (3)
...
subroutine sub (i)
i = i + 1 ! Will cause an access violation
</pre>
The Fortran language prohibits changing the definition status of an argument associated with a constant or expression. If your application needs to do so, you can specify the <code>/assume:noprotect_constants</code> option. (In the visual development environment, select project property '''Fortran..Data..Constant Actual Arguments Can Be Changed..Yes'''.) This will instruct the compiler to create and pass a temporary copy of the constant actual argument. The called procedure can change this copy which will be discarded when the procedure exits.
</blockquote>

Revision as of 05:04, 12 July 2006

Allgemeine Einstellungen

Compiler-Einstellungen (Flags), die zur erfolgreichen Kompilierung erforderlich sind.

  • Damit Intel Fortran bei unformatierten Dateien die Record-Länge als bytes und nicht als 4-byte Einheiten (longwords) interpretiert, muss folgender Flag gesetzt werden:
    "Use Bytes as RECL unit for unformatted files" (siehe Bild)
    Use Bytes as RECL

Intel Fortran 9.1

Aus den Release notes:

Constants Are Now Read-Only

Constants, including literals and named constants (PARAMETER), are now allocated in a memory section that is protected against write access. This means that if a constant is passed as an actual argument to a procedure and the procedure tries to modify the argument, an access violation will result. For example:

call sub (3)
...
subroutine sub (i)
i = i + 1 ! Will cause an access violation

The Fortran language prohibits changing the definition status of an argument associated with a constant or expression. If your application needs to do so, you can specify the /assume:noprotect_constants option. (In the visual development environment, select project property Fortran..Data..Constant Actual Arguments Can Be Changed..Yes.) This will instruct the compiler to create and pass a temporary copy of the constant actual argument. The called procedure can change this copy which will be discarded when the procedure exits.