A working program had the following code:

018000              MVC   0(8,R1),=CL8'EJESPOP'     Set command name
018010              MVC   8(8,R1),=CL8'PATHNAME'    Set command parameter

An overzealous programmer, trying to be helpful, changed it to:

018000              MVC   0(16,R1),=CL8'EJESPOP PATHNAME' Set cmd name/parm

which introduced a problem that wasn't discovered until a very inopportune time.

Of course, there is no substitute for thorough testing. But, it occurs to me that the assembler could issue a warning when data is lost from truncation as the result of a nominal value requiring more bytes than are explicitly specified via a length modifier.

Single-byte character constants are the data type in which I'm interested, but an argument might exist for supporting this for other data types as well.

Note: according to the book, double-byte character constants can't be truncated, fixed-point constants can't be truncated if it will result in data loss, and floating-point constants are rounded.

Is there a way to achieve what I want using existing HLASM R6 options? If not, is a requirement already on the books?

--
Edward E Jaffe
Phoenix Software International, Inc
831 Parkview Drive North
El Segundo, CA 90245
http://www.phoenixsoftware.com/

Reply via email to