From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID, WEIRD_PORT autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 109fba,baaf5f793d03d420 X-Google-Attributes: gid109fba,public X-Google-Thread: fc89c,97188312486d4578 X-Google-Attributes: gidfc89c,public X-Google-Thread: 1014db,6154de2e240de72a X-Google-Attributes: gid1014db,public X-Google-Thread: 103376,97188312486d4578 X-Google-Attributes: gid103376,public From: tanmoy@qcd.lanl.gov (Tanmoy Bhattacharya) Subject: Re: What's the best language to start with? [was: Re: Should I learn C or Pascal?] Date: 1996/08/30 Message-ID: #1/1 X-Deja-AN: 177458602 references: <31FBC584.4188@ivic.qc.ca> <01bb83f5$923391e0$87ee6fce@timpent.airshields.com> content-type: text/plain organization: Los Alamos National Laboratory mime-version: 1.0 newsgroups: comp.lang.c,comp.lang.c++,comp.unix.programmer,comp.lang.ada Date: 1996-08-30T00:00:00+00:00 List-Id: In article <50650h$rek@goanna.cs.rmit.edu.au> ok@goanna.cs.rmit.edu.au (Richard A. O'Keefe) writes: RAO: - a program that conforms to the C standard (we were talking about RAO: standard C, no?) may not legally set any variable external to the RAO: handler if that variable is not of type sig_atomic_t. Now on _this_ RAO: system, sig_atomic_t is int, so a *legal* signal handler, however RAO: malicious, may not change a char buffer. (This obviously won't RAO: apply to systems in which sig_atomic_t is char, but it _does_ RAO: apply to this system, and the compiler is entitled to rely on it.) It can't change a variable declared `sig_atomic_t' either: it has to be `volatile sig_atomic_t'. And, if your buffer is volatile, it can change anyway: signal handler or no. Cheers Tanmoy -- tanmoy@qcd.lanl.gov(128.165.23.46) DECNET: BETA::"tanmoy@lanl.gov"(1.218=1242) Tanmoy Bhattacharya O:T-8(MS B285)LANL,NM87545 H:#9,3000,Trinity Drive,NM87544 Others see , or. -- fax: 1 (505) 665 3003 voice: 1 (505) 665 4733 [ Home: 1 (505) 662 5596 ]