Edward Jaffe wrote:

| I'm not interested in a COMPAT() option to remain compatible with
older assemblers . . .

and I understand and sympathize.

However, and perhaps unfortunately, permission to be incompatible with
older assemblers is treated under the same rubric.   There is a
NOCOMPAT option too.

A little more perspicuously, one can add

NOCOMPAT(NOCASE,NOMACROCASE)

to, say, an ACONTROL statement, thus localizing its purview

The first option ensures that the minuscules in, for example,

|LeftFcp  DC      AD . . .

are not in effect translated into

|LEFTFCP   DC   AD . . .

The second ensures that

|          MYMAC  option=yes

does not in effect become

|          MYMAC OPTION=YES


Worth noting is that the restriction on LIBRARY macro names is not
lifted.  It reflects PDS[E] member-name syntax requirements that are
not under the control of the HLASM.  (In-line macro definitions and
instructions may, however, have longer-than-eight-character,
mixed-case names.)

With NOCOMPAT(NOCASE) in effect the HLASM thus distinguishes among
MyLabel, MYLABEL, etc.  I does not treat them as synonyms.  What sort
of error messages it will generate when one is misused for another of
course depends upon context.

John Gilmore, Ashland, MA 01721 - USA

On 12/30/11, Edward Jaffe <[email protected]> wrote:
> On 12/30/2011 7:33 AM, Edward Jaffe wrote:
>> On 12/30/2011 6:43 AM, John Gilmore wrote:
>>> Case control is a more complicated issue.  In situations like the one
>>> EJ describes I have found the two options that the HLASM already
>>> supports, viz.,
>>>
>>> o CASE | NOCASE, and
>>>
>>> o MACROCASE|NOMACROCASE
>>>
>>> entirely adequate; but this is because I work in a very small group of
>>> usually two and never more than three people in which my taste is, if
>>> not controlling,  very influential.
>>
>> Honestly, I forgot about these options. Thanks for reminding me. I will
>> see if
>> they meet my needs.
>
> OK. I reviewed these options. They do NOT do what I need. (This is probably
> why
> I forgot about them.)
>
> 1. COMPAT(CASE) enforces a requirement for uppercase opcodes and symbols.
> Almost
> exactly the opposite of what I want.
> 2. COMPAT(MACROCASE) converts macro operands to uppercase.
>
> I'm not interested in a COMPAT() option to remain compatible with older
> assemblers. I want a new option, as described previously, to generate a
> diagnostic when a programmer references MyField as (for example) MyfiEld.
> For
> ease of transition, it might be nice if the option could be limited to
> certain
> symbols or sections. For example, a new operand on the DSECT statement that
> says
> the fields defined herein must be referenced using the correct case.
>
> --
> Edward E Jaffe
> Phoenix Software International, Inc
> 831 Parkview Drive North
> El Segundo, CA 90245
> 310-338-0400 x318
> [email protected]
> http://www.phoenixsoftware.com/
>


--
John Gilmore, Ashland, MA 01721 - USA

Reply via email to