On Tue, 25 Oct 2016 16:49:46 -0700, Charles Mills wrote:
>
>Yeah, I could test the basic issues but I am wondering if anyone is doing
>this extensively and "happy with it." What are the gotchas? Those are tough
>questions to answer via experimentation.
> 
It's purportedly supported.  IBM has fixed all the problems I reported
but overhead and latency has been a PITA.

>Is anyone using HFS files as their main repository of source code input to
>and/or object code output from HLASM? The HLASM manuals are strangely silent
>on the issues:
>
>- Is the assembler "happy" with serial UNIX file type input, with records of
>varying lengths up to but not exceeding 80?
>
Yes.  Use RECFM=FB,LRECL=80,FILEDATA=TEXT.  (FILEDATA=BINARY might
work if the data are formatted that way.)

>- How about SYSLIB? I know technically a USS directory can satisfy BPAM --
>is HLASM happy with directories as libraries? Does it work if you
>concatenate your own HFS directory(ies) to SYS1.MACLIB and the like?
>- How about output? Does SYSLIN output to a USS folder seem to work out?
>
I've had a couple problems with this, both fixed by APAR, both occurring
with nested COPY instructions (macros are effectively not nested) and
references between HFS and CKD.
o POINT didn't get back to the place of the NOTE.  This could be masked
  if BLKSIZE>size of member.  Support tried to tell me, "Don't use
  BLKSIZE=80."  I argued and won.
o ABENDs because of storage key incompatibility between HFS and CKD.

Since then, we converted largely to a cross-assembler.  I haven't checked
for regression lately.

In Binder SYSLIB, HFS directories must not be concatenated; they must
appear solitaire.  But you can use multiple DDNAMEs:
//LINK  EXEC  PGM=IEWL,PARM=CASE(MIXED)
  INCLUDE HFS1(foo)
  INCLUDE HFS2(bar)
  INCLUDE CKDCAT(WOMBAT)

In Binder SYSLIN (and SYSLIB?) FILEDATA=TEXT is ignored; it is quietly
overridden to BINARY.  (I tried this with SYSLIN containing only commands,
no SYSPUNCH.)  I submitted an RCF on this.  Pubs complained bitterly,
"Everyone ought to know that!"  I argued; I think I won, but I haven't
checked the doc recently.

>Why do I ask? I have C code in HFS and assembler code in PDSEs and the
>"management" details are a little incompatible. Not hopelessly so, but
>somewhat. It might make sense to consolidate the high level structure.
> 
If you're perversely clever, you can interleave control block definitions:

#define MACRO /* nothing */
#include <structure.h>

and in structure.h (untested):

         MACRO /*
&L       WOMBAT &ARG
*/ struct wombat { /*
         NUM  DS  F
*/       long num;  /*
         MEND
*/       }

... if you want to do that sort of thing.

cc/c99/xlc will invoke HLASM for filename extension ".s".
But I found that SYSPARM is forced to upper case.  (Why?)

-- gil

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to