PRB: L1103 From DATA Initialization Beyond End of ArrayLast reviewed: July 19, 1995Article ID: Q88012 |
The information in this article applies to:
SYMPTOMSCompiling and linking code that contains a DATA statement that uses an implied DO-loop to initialize an array in a COMMON block and that implied DO-loop initializes beyond the end of the array may cause the following linker error:
fatal error L1103: attempt to access data outside segment bounds CAUSEThe compiler is not issuing an error message when the DATA beyond the end of the array is being allocated. This causes the object module to contain data initialized past the end of the COMMON block and crossing a segment bound.
RESOLUTIONMake sure that all DATA statement initializations of data in COMMON blocks are within the bounds of the data as declared. This is not a problem in FORTRAN PowerStation.
MORE INFORMATIONThe following code can be used to demonstrate the problem.
Sample Code
integer*4 test(1) common /comtest/ test data (test(i),i=1,2)/7,8/ end |
Additional reference words: 5.10
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |