Re: Fixed point overflow and PL/1
Hi Arthur, I guess, it is S0CA, not S0C8, because S0C8 is for binary fixed point overflow. S0CA is for decimal overflow. This is the end of an old story. We had problems when we entered C routines with the S0C8 mask bit in the PSW set, because the generated C code couldn't tolerate this (there was some address arithmetic in some ANSI library functions which used arithmetic left shifts that immediately led to S0C8 abends if this mask bit was set ... so we had to switch off the S0C8 mask bit before entering these run time functions). This was at a time when OS PL/1 V2.3 was still in use which did a pretty good job on FIXEDOVERFLOW etc. with binary values, which we used all the time; this is why we had the S0C8 active in our ASSEMBLER modules, too ... but when moving to C, we had to get rid of this. Then there was a period when S0C8 abends were captured by LE and neutralized under the cover ... with massive performance impacts. In the end, all LE languages including EP PL/1 (and C, of course) had to be run with the S0C8 mask bit off. Kind regards Bernd Am 22.03.2015 um 10:27 schrieb Arthur Fichtl: Cited from http://www-01.ibm.com/support/knowledgecenter/SSQ2R2_7.6.1/com.ibm.ent.pl1.zos.doc/topics/ibmm2mst131.htm%23wq226: As documented elsewhere, under Enterprise PL/I, the FIXEDOVERFLOW/NOFIXEDOVERFLOW (or FOFL/NOFOFL) prefix applies only to FIXED DECIMAL operations. And, it is based on the Fixed-point overflow exception S0C8. Arthur -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Fixed point overflow and PL/1
Am 22.03.2015 05:00, schrieb IBM-MAIN automatic digest system: Date:Sat, 21 Mar 2015 22:37:58 +0200 From:Binyamin Dissen Subject: Fixed point overflow and PL/1 I cannot seem to force fixed point overflow under PL/1. Specified (FOFL) as a statement qualifier and it does not seem to affect the compile. Even used CEE3SPM. -- Binyamin Dissen http://www.dissensoftware.com Cited from http://www-01.ibm.com/support/knowledgecenter/SSQ2R2_7.6.1/com.ibm.ent.pl1.zos.doc/topics/ibmm2mst131.htm%23wq226: As documented elsewhere, under Enterprise PL/I, the FIXEDOVERFLOW/NOFIXEDOVERFLOW (or FOFL/NOFOFL) prefix applies only to FIXED DECIMAL operations. And, it is based on the Fixed-point overflow exception S0C8. Arthur -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Fixed point overflow and PL/1
On Sat, 21 Mar 2015 22:37:58 +0200, Binyamin Dissen wrote: >I cannot seem to force fixed point overflow under PL/1. Specified (FOFL) as a >statement qualifier and it does not seem to affect the compile. > I believe I've read (perhaps even in these pages) that: o The C standard states: - The value resulting from an operation on signed operands when the mathematical result is outside the value set of the result time is implementation-defined. - It does not state that an error is allowed to occur. - Many C programmers rely on the assumption that no error will be reported, perhaps even assuming it will be treated modulo( cardinality( value set ) ). o The C compiler and runtime are coming increasingly to share code with PL/1, so in order to accommodate the C carelessness the common compiler backend and runtime no longer report integer overflows. I'm dismayed. But I'm likewise dismayed that HLASM tolerates division by zero in assembly-time arithmetic. --gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Fixed point overflow and PL/1
I cannot seem to force fixed point overflow under PL/1. Specified (FOFL) as a statement qualifier and it does not seem to affect the compile. Even used CEE3SPM. -- Binyamin Dissen http://www.dissensoftware.com Director, Dissen Software, Bar & Grill - Israel Should you use the mailblocks package and expect a response from me, you should preauthorize the dissensoftware.com domain. I very rarely bother responding to challenge/response systems, especially those from irresponsible companies. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN