Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Protection exception in Lscpy() under INTERPRET. #77

Open
RossPatterson opened this issue Aug 20, 2024 · 1 comment
Open

Protection exception in Lscpy() under INTERPRET. #77

RossPatterson opened this issue Aug 20, 2024 · 1 comment
Labels
bug Something isn't working

Comments

@RossPatterson
Copy link
Collaborator

RossPatterson commented Aug 20, 2024

The instruction Interpret 'Return F()' crashes CMS with message DMSITP143T ADDRESSING EXCEPTION OCCURRED AT 3ACD6A IN SYSTEM ROUTINE EXEC, RE-IPL CMS.. This has been verified in VM/370 CE 1.2, with the version of BREXX it ships with.

Test case:

/* */
Interpret 'Return F()'
Exit

F: Procedure
Return 2

This happens because something I haven't yet located in BREXX is calling Lscpy() with a to parameter set to 0. The protection exception occurs when Lscpy() attempts to store into the Lstr object at that location.

There is a work-around: store the function result into a variable, and return that instead. This example works fine:

Interpret 'R = F()'
Return R

F: Procedure
Return 2
@RossPatterson RossPatterson changed the title Protection exception in LSTRCPY under INTERPRET. Protection exception in Lscpy() under INTERPRET. Aug 23, 2024
@RossPatterson RossPatterson added the bug Something isn't working label Oct 13, 2024
@RossPatterson
Copy link
Collaborator Author

This is reproducible in the original bREXX at the latest version (2.1.9).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant