>It's inconvenient to have to keep SYSSTATE manually synchronized. A very minor inconvenience -- typically 1 line per module to set SYSSTATE according to the AMODE. And if you want SYSSTATE to be in synch with your SAM24/SAM31/SAM64, you can consider OPSYN'ing them or creating macros to do both the instruction and the SYSSTATE. In a high level language that supports the concept of "begin amode(xx)" and "end", the "end" might correspond do a SYSSTATE POP.
While the binder ESD attribute was mentioned, I didn't see anyone specifically mention that the AMODE statement in a module is rarely (if ever) a guarantee that the execution is in that AMODE. Certainly in the general case you can have an AMODE statement in a module but override that with a binder AMODE attribute. Peter Relson z/OS Core Technology Design
