Skip to content
Snippets Groups Projects
Commit 159e915b authored by rdubner's avatar rdubner
Browse files

Moved BIGGER-POINTER tests to testsuite from failsuite

parent cfc99329
No related branches found
No related tags found
No related merge requests found
Pipeline #1310 passed
...@@ -834,50 +834,3 @@ AT_CLEANUP ...@@ -834,50 +834,3 @@ AT_CLEANUP
##### #####
AT_SETUP([FUNCTION BIGGER-POINTER])
AT_KEYWORDS([functions POINTER ])
AT_DATA([prog.cob], [
IDENTIFICATION DIVISION.
PROGRAM-ID. prog.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 N PIC S9(8) COMP-5 value 0.
01 P REDEFINES N POINTER.
01 FILLER.
05 X PIC A(4) VALUE "ABC".
05 E REDEFINES X PIC A(1) OCCURS 4.
LINKAGE SECTION.
77 B PIC A.
PROCEDURE DIVISION.
set P to address of E(1).
display FUNCTION trim(x) '.'
set address of B to p.
perform until B = SPACE
display B no advancing
set p up by 1
set address of B to p
end-perform
display '.'
set P to address of E(1)
set address of B to p
perform until B = SPACES
display B no advancing
add 1 to N
set address of B to p
end-perform
display '.'
STOP RUN.
])
AT_CHECK([$COMPILE -dialect ibm prog.cob], [0], [], [])
AT_CHECK([$COBCRUN_DIRECT ./a.out], [0], [ABC.
ABC.
ABC.
], [])
AT_CLEANUP
...@@ -3815,3 +3815,77 @@ B The function returns 005 ...@@ -3815,3 +3815,77 @@ B The function returns 005
], []) ], [])
AT_CLEANUP AT_CLEANUP
AT_SETUP([FUNCTION BIGGER-POINTER])
AT_KEYWORDS([functions POINTER ])
AT_DATA([prog.cob], [
IDENTIFICATION DIVISION.
PROGRAM-ID. prog.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 N PIC S9(8) COMP-5 value 0.
01 P REDEFINES N POINTER.
01 FILLER.
05 X PIC A(4) VALUE "ABC".
05 E REDEFINES X PIC A(1) OCCURS 4.
LINKAGE SECTION.
77 B PIC A.
PROCEDURE DIVISION.
set P to address of E(1).
display FUNCTION trim(x) '.'
set address of B to p.
perform until B = SPACE
display B no advancing
set p up by 1
set address of B to p
end-perform
display '.'
set P to address of E(1)
set address of B to p
perform until B = SPACES
display B no advancing
add 1 to N
set address of B to p
end-perform
display '.'
STOP RUN.
])
AT_CHECK([$COMPILE -dialect ibm prog.cob], [0], [], [])
AT_CHECK([$COBCRUN_DIRECT ./a.out], [0], [ABC.
ABC.
ABC.
], [])
AT_CLEANUP
AT_SETUP([FUNCTION BIGGER-POINTER (2)])
AT_KEYWORDS([functions POINTER ])
AT_DATA([prog.cob], [
identification division.
program-id. prog.
data division.
working-storage section.
01 n4 pic s9(8) comp-5 value 0.
01 p4 redefines n4 pointer.
01 n8 pic s9(16) comp-5 value 0.
01 p8 redefines n8 pointer.
procedure division.
move -1 to n8
set p4 to p8
display "P4 and P8 before: " p4 space p8
display "Increment N4 and N8"
add 1 to n4 n8
display "P4 and P8 after: " p4 space p8
goback.
end program prog.
])
AT_CHECK([$COMPILE -dialect ibm prog.cob], [0], [], [])
AT_CHECK([$COBCRUN_DIRECT ./a.out], [0], [P4 and P8 before: 0xffffffffffffffff 0xffffffffffffffff
Increment N4 and N8
P4 and P8 after: 0x0000000000000000 0x0000000000000000
], [])
AT_CLEANUP
IDENTIFICATION DIVISION. identification division.
PROGRAM-ID. callee. program-id. prog.
DATA DIVISION. data division.
WORKING-STORAGE SECTION. working-storage section.
01 V123 PIC 999 VALUE 123. 01 n4 pic s9(8) comp-5 value 0.
01 VALB PIC 999 BASED. 01 p4 redefines n4 pointer.
01 VALB2 PIC 999 BASED. 01 n8 pic s9(16) comp-5 value 0.
01 VALP POINTER. 01 p8 redefines n8 pointer.
01 VALP2 POINTER. procedure division.
PROCEDURE DIVISION. move -1 to n8
set VALP VALP2 to address of V123. set p4 to p8
set ADDRESS OF VALB ADDRESS OF VALB2 TO VALP. display "P4 and P8 before: " p4 space p8
display VALB. display "Increment N4 and N8"
add 1 to n4 n8
display "P4 and P8 after: " p4 space p8
goback. goback.
end PROGRAM callee. end program prog.
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment