HDTenEightyP/NetNews huggingface dataset:
From: tmb@arolla.idiap.ch (Thomas M. Breuel)
Newsgroups: comp.lang.c,comp.lang.c++
Subject: Re: C/C++ Speed (was: Re: C/C++ Correctness (was: Re: C/C++ Speed))
Date: 21 Jan 93 14:36:47
Organization: IDIAP (Institut Dalle Molle d'Intelligence Artificielle
	Perceptive)
	<1jkismINN3qq@armory.centerline.com> <1993Jan21.081537.8192@netcom.com>
Reply-To: tmb@idiap.ch
NNTP-Posting-Host: arolla.idiap.ch
In-reply-to: erc@netcom.com's message of 21 Jan 93 08:15:37 GMT

>>>>> On 21 Jan 93 08:15:37 GMT, erc@netcom.com (Eric Smith) said:

> That implies that C++ has performance drawbacks to overcome, but there
> are none except when using specific non-C features of C++ which are easy
> to avoid, if avoiding them is desired.

Actually, both C and C++ have _serious_ performance drawbacks to
overcome when it comes to scientific computation. The reason is that
the pointer concept is so general that the compiler can determine
virtually nothing about aliasing. The consequence is that most array
code must be executed completely serially even when the hardware is
capable of vectorization or parallelism.

The construct that primarily makes C/C++ unsafe and more difficult to
debug than code in other languages (namely its very general notion of
pointer) also makes it difficult to optimize.

					Thomas.
Newsgroups: comp.lang.c
From: msbuck@tacom-emh1.army.mil (M. Scott Buck)
Subject: C and/or C++ style guide
Organization: U.S. Army Tank Automotive Command (TACOM)
Distribution: comp.lang.c
Date: Wed, 27 Jan 1993 15:29:03 GMT


Does anyone know of a C and/or C++ style guide that is available
through the net?

Thanks

Scott

/------------------------------------------------------------------------------\
|  M. Scott Buck                      |  Phone:  (313) 574-5007                |
|  U.S. Army Tank-Automotive Command  |  DSN:          786-5007                |
|  VETRONICS Technology Center        |                                        |
|  Software Engineering Division      |  email:  msbuck@tacom-emh1.army.mil    |
|  AMSTA-OS                           |          bucks@tacom-emh165.army.mil   |
|  Warren, MI  48397-5000             |                                        |
\------------------------------------------------------------------------------/

begin 664 disclaimer
M5&AE('9I97=S(&5X<')E<W-E9"!I;B!T:&ES(&UE<W-A9V4@87)E(&UI;F4@
M86YD(&YO="!T:&4@=FEE=W,@;V8@;7D*96UP;&]Y97(L('1H92!5;FET960@
84W1A=&5S($%R;7DN"@I'3R!"3%5%(0H*
`
end
From: noah@ucscb.UCSC.EDU (Noah Spurrier)
Newsgroups: comp.lang.c
Subject: Need info for Turbo-C on storing lots of data within source.
Date: 22 Jan 93 05:43:45 GMT
Organization: University of California; Santa Cruz
NNTP-Posting-Host: ucscb.ucsc.edu


Keywords: Turbo C data

I have a program that stores a compressed picture of its title screen. The
title screen is a graphic image. Also the program stores some documentation.
The program is fairly short. I do not want to store this data in
separate files. What I did is use HUGE arrays with initialization to the
big chunk of data. This works fine, but I notice that some people have had
the program crash with something like the following error:

STACK OVERFLOW

or 

STACK FULL, SYSTEM HALTED

Another person told me that these huge arrays were being stored in the
stack segment and that because they just sit on the stack and never move
this does not give my program much room to work with.

Would simply making the array STATIC help things?

I also farmalloc a 64K buffer, but I don't think that should hurt the stack
at all. 

How can I get Turbo-C to store these variables in the data segment instead of
the stack?

Here is an example of how I declare and initialize one of my arrays:
unsigned char far TITLE_DATA [(X_TITLE*Y_TITLE/4)] =
{ 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
  85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
  85, 85, 85, 85, 85, 85,117, 85, 85, 85,117, 85, 85, 85,117, 85, 85,213, 85, 85,
  85, 85, 85, 85, 85, 87,213, 85, 85, 87,213, 85, 85, 87,213, 85, 95, 85, 85, 85,
  85, 85, 85, 85, 85,127,213, 85, 85,127, 85, 85, 85,127, 85, 85,255, 85, 85, 85,
  85, 85, 85, 85, 85,255,213, 85, 85,253, 85, 85, 85,253, 85, 87,255, 85, 85, 85,
 
....
....};

Thanks for even bothering to read this damn thing!

noah@ucscb.ucsc.edu
Newsgroups: comp.lang.c
From: richieb@bony1.bony.com (Richard Bielak)
Subject: Re: C/C++ Correctness (was: Re: C/C++ Speed)
Organization: multi-cellular
Date: Thu, 28 Jan 93 14:10:49 GMT

In article <harvey.726965486@regina> harvey@opl.com (Harvey Reed) writes:

[...]
>BTW, if C++ is a niche language why are a good deal of the tech and 
>application software companies moving to C++? How many Eiffel ads
>for programmers do you see?
>

Bertrand Russell once said:

  "If a thousand people say a foolish thing, it's still a foolish
   thing."


...richie
-- 
* Richie Bielak   (212)-815-3072   |                                          *
* Internet:       richieb@bony.com | Rule #1: Don't sweat the small stuff.    *
* Bang {uupsi,uunet}!bony1!richieb | Rule #2: It's all small stuff.           *
*    - Strictly my opinions -      |                                          *
Newsgroups: comp.lang.c,comp.os.msdos.programmer
From: tsuanian@cc.curtin.edu.au
Subject: Re: Reading the arrow keys... how?
Organization: Curtin University of Technology
Date: Fri, 22 Jan 1993 01:18:09 GMT

In article <1jmeupINN4g9@savoy.cc.williams.edu>, 93gke@williams.edu (Just Ask The Axis) writes:
> I am trying to read the arrow keys from a PC keyboard in C. So far
> the calls to getch(), getc(), getchar(), have been unsuccessful
> because the keys don't seem to have a corresponding ASCII code (they
> seem to send 2 characters..?) I also need to read some regular keys
> like Q,S, etc... 
> Could someone tell me how to read them directly, please.
> 
> Greg Ennis
> 93gke@cs.williams.edu
> 


Keys such as arrow keys, function keys, etc do not have an ASCII
code.  When one of these keys are pressed, it gives of two numbers.
The first is 00 and the next is it's scan code. I think any decent
MS DOS handbook should tell you what the scan codes are. but if
you have any problems I'll see what I can dig up.
Can't remember the exact code I used to read the codes, but I'm
pretty sure it was a combination of kbhit() and getch().

Ian
-- 
 Internet: TSUANIAN@cc.curtin.edu.au
 Bitnet: TSUANIAN%cc.curtin.edu.au@cunyvm.bitnet
 UUCP  : uunet!munnari.oz!cc.curtin.edu.au!TSUANIAN
Newsgroups: comp.lang.c,comp.lang.fortran
From: hartman@ulogic.UUCP (Richard M. Hartman)
Newsgroups: comp.lang.c
Subject: Re: Conversion of BASIC code to "C"
Date: 27 Jan 93 15:53:49 GMT
Organization: negligable

In article <728053861snz@genesis.demon.co.uk> fred@genesis.demon.co.uk (Lawrence Kirby) writes:
>What gives those early, crippled, versions of a language more right to be
>called BASIC than later, less crippled, ones? As you say, there was no BASIC
>standard even in the 'good' old days.

They were there first? <g>

>So long as a modern language can still run programs written in the 'real'
>language (with at least as much reliability as all the old variants) it has
>every right to be called BASIC. If you don't wish to use the newer constructs
>that's entirely your own decision.

So if I decide to refer to "C++" as "C", because it can compile
old C code, that would be all right by you?

When a language becomes as different as the old basic and the new,
the name should change.  It really is not the same language any more!


		-Richard Hartman
		hartman@ulogic.COM

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Never speak in absolutes.  It will always lead to trouble.	<g>

Newsgroups: comp.lang.c
From: rfries@sceng.ub.com (Robert Fries)
Subject: Re: Turbo C FOPEN error
Organization: Ungermann Bass
Date: Thu, 28 Jan 1993 16:14:11 GMT

In article <1993Jan27.053643.21953@news.cs.brandeis.edu> gilmour@binah.cc.brandeis.edu (Jeffrey R. Gilmour) writes:

>I can't figure out what's wrong.  This program works fine as long as there's
>less than 16 files (it doesn't actually matter what drive).  I haven't come
>across anything explaining it in the manual.  The error happens at runtime 
>during the 'stream = fopen(name...' line.  Anybody?

>/*
>**      FOPENERR.C
>*/
> 
>#include "stdio.h"
>#include "io.h"
>#include "dos.h"
> 
>void main(void)
>{
>        int done;
>        char name[15];
>        struct find_t test;
>        struct ftime ft;
>        FILE *stream;
> 
>        done = _dos_findfirst("a:*.*", _A_NORMAL, &test);
>        while (!done) {
>                strcpy(name, "a:");
>                strcat(name, test.name);
>                if ((stream = fopen(name, "r")) == NULL) {
>                        printf("Error in opening filename.\n");
>                        exit (1);
>                }
> 
>                getftime(fileno(stream), &ft);
>                printf("%-16s%7lu\t%2u/%02u/%u\n", name,
>                        test.size, ft.ft_month,
>                        ft.ft_day, ft.ft_year+1980);
>                done = _dos_findnext(&test);
>        }
>        fclose(stream);
>}

>___________________________________ 
>|__/~~~~~\__/~~~~\__/~~~~\__/~~~~\_|/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
>|____/~\____/~\_____/~\_____/~\____|\                                          /
>|____/~\____/~~~\___/~~~\___/~~~\__|/   T h i s   S p a c e   f o r   R e n t  \
>|____/~\____/~\_____/~\_____/~\____|\                                          /
>|__/~~~\____/~~~~\__/~\_____/~\____|/       GILMOUR@BINAH.CC.BRANDEIS.EDU      \
>|__________________________________|\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

Probably caused by having too many open files. Put the fclose(stream) call 
inside your loop; right after the call to getftime() looks like a good place.

As it is, your program only explicitly closes the last file it opened,
and all files are closed automatically when your program terminates.

Robert

//////////////////////////////////////////////////////////////////////////
Robert Fries
Ungermann-Bass Inc.

DISCLAIMER:
    Opinions contained herein are my own, and are not necessarily those
    of Ungermann-Bass.
//////////////////////////////////////////////////////////////////////////
From: lange@gaffel.informatik.Uni-Koeln.DE (Thomas Lange)
Newsgroups: comp.lang.c
Subject: Wanted: Need Info's for Apogee Compiler for Sun
Date: 25 Jan 1993 12:08:19 GMT
Organization: Regional Computing Center, University of Cologne
Distribution: world
NNTP-Posting-Host: gaffel.informatik.uni-koeln.de
Keywords: Compiler, Sun, Apogee

Hello folks !
I'm looking for information about Apogee C-Compiler for Sun's Sparc 10.
Has anybody experience or the address of Apogee Software Inc.


Please email to: lange@informatik.uni-koeln.de

------------------------------------------------------------------------
      Thomas Lange              E-Mail :  lange@informatik.Uni-Koeln.DE
Institut fuer Informatik
   Universitaet zu Koeln        Telefon: +49 221 3671 103
            Pohligstr. 1
           5000 Koeln 51        FAX    : +49 221 3671 117
------------------------------------------------------------------------


Newsgroups: comp.lang.c
From: johnb@cadreor.cadre.com (John Blattner)
Newsgroups: comp.lang.c
Subject: Re: Tool for cross references in C ???
Date: 26 Jan 93 19:34:51 GMT
Article-I.D.: cadreor.1993Jan26.193451.16384
Organization: Cadre Technologies Incorporated, Beaverton, Oregon.
X-Newsreader: Tin 1.1 PL5

Amand Pascal (amand@granit.unice.fr) wrote:
: 
: 	Hi,
: 
: 	Does anybody know a tool to get cross references in
: 	C modules, i.e.:
: 
: 	- where is used a variable
: 	- who calls a function ...
: 
: 	Thanks.
: 
: -------------------------------------------------------------------------------
: Pascal Amand                                Email: amand@essi.cerisi.fr
: DEA Informatique                        
: I3S - Sophia Antipolis - France
: -------------------------------------------------------------------------------


You might want to look at Cadre's Ensemble toolset, which
provides this functionality.


John Blattner
Cadre Technologies
johnb@cadre.com
Xref: sparky comp.lang.c:20135 comp.lang.c++:19820
From: dave@cs.arizona.edu (Dave Schaumann)
Newsgroups: comp.lang.c,comp.lang.c++
Subject: Re: C/C++ Correctness (was: Re: C/C++ Speed)
Date: 23 Jan 93 19:53:29 GMT
Reply-To: dave@cs.arizona.edu (Dave Schaumann)
Followup-To: comp.lang.c
Organization: University of Arizona

In article <C19qw8.1z3@brunel.ac.uk>, cs89rdb@brunel (Roger D Binns) writes:
>[...]The question is what would you rather have:
>
>- A product early to market that is correct, and runs at a performance
>  'penalty'
>- A product early to market that is incorrect, and has no penalty
                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Excuse me?  Seems like a buggy or wrong implementation is its own penalty...

>- A product late to market that is correct and has no performance penalty
>
>I suspect the case is the first one.  The second one seems to be common
>practice.  The last one will give you the warm fuzzy feeling you desire
>when having no performance penalty.

Producing software tends to be highly competative.  Many times, having
a product available is more important (at least, in the short term) than
the quality of its implementation.  Moreover, if a more robust update
comes out reasonably quickly, the bugs of the initial version are quickly
forgotten.

-- 
Caught an internal error--.brainrc restored
From: volpe@bart.NoSubdomain.NoDomain (Christopher R Volpe)
Newsgroups: comp.lang.c
Subject: Re: Preprocessor question
Date: 27 Jan 93 19:50:17 GMT
Reply-To: volpe@ausable.crd.ge.com
Organization: GE Corporate Research & Development

In article <1099@quirm.terminus.ericsson.se>, srl@terminus.ericsson.se (Steve Langstaff) writes:
|> In article 1k44lqINNjr3@rs2.hrz.th-darmstadt.de, misar@rbg.informatik.th-darmstadt.de (Walter Misar) writes:
|> : In article <mick.728072797@picus>, mick@dcs.bbk.ac.uk (Mick Farmer) writes:
|> : > Hi,
|> : > 
|> : > Karim asks how to get a preprocessor macro recognised inside
|> : > a string.  The answer, at least in ANSI C, is to use the
|> : > stringising operator and string concatenation:
|> : > 
|> : > #define JUNK 50
|> : > static char *junk = #JUNK " ways to leave your lover"
|> :                       ^^^^^
|> : Nope, #token works only with #defines like in:
|> : #define stringify(x) #x
|> : #define str_exp(x) stringify(x)		/* this extra level IS necessary */
|> : static char *junk = str_exp(JUNK) "ways ....";
|> : 
|> [snip]
|> 
|> Why is the extra level necessary?

Without the extra level, it quotes the macro argument as written. For
example, the result of `stringify(JUNK)' using the above definitions
would be `"JUNK"'. I.e., the argument JUNK gets quoted before being
expanded. The extra indirection gives the argument JUNK a chance to
be macro-expanded before being quoted. Hence, the result of `str_exp(JUNK)'
is `"50"'.

-Chris

-- 
==================
Chris Volpe
G.E. Corporate R&D
volpecr@crd.ge.com
Newsgroups: comp.lang.c
From: hari@blackmail.eng.uiowa.edu (Hari Vattikota)
Subject: Three dimensional array.
Date: Sat, 23 Jan 1993 17:32:00 GMT
Organization: Department of Elect. and Comp. Engr., University of Iowa, USA.

I have an 3 dimensional array(big one)[64000][180][2]. each element
of this array is 1 bit.

How do I declare and store this array so that the memory usage is
minimum ? Also I should be able to read and write any of the 
element with minimum of masking or any other bit operations.

Thanks.

Hari.
From: pinky@tamu.edu (The Man Behind The Curtain)
Newsgroups: comp.lang.c
Subject: Re: Conversion of BASIC code to "C"
Date: 24 Jan 93 20:24:42 GMT
Organization: Texas A&M University
NNTP-Posting-Host: tamsun.tamu.edu

Thus spake hartman@ulogic.UUCP (Richard M. Hartman):
>In article <1993Jan14.000132.1427@microsoft.com> philco@microsoft.com (Phillip Cooper) writes:
>> In case you didn't realize
>>it, BASIC is now fully structured (with functions, subroutines, etc..).  
>
>I am tired of hearing this!  I don't care what they claim, but that
>new language with functions, subroutines, etc is NOT BASIC!

That's funny.  I've programmed in what I thought was BASIC for at
least 3, 4 years with nary a goto or subroutine.  Certainly even
microcomputer BASICs had subroutines, and most had primitive functions
(ie. DEF FN, etc.)

Certainly the inventors of the language felt that such structures
were an integral part of Basic; they in fact deplored what happened
to their language when ported to limited microcomputers (in _Back_To_Basic_)

At any rate, I could probably read and understand most variations
of Basic, though you might choose to call them something else.
If I didn't know Pascal, on the other hand, I would be unlikely
to understand what someone else had written.

>		-Richard Hartman

IMHO, of course.

-- 
Till next time,                \o/   \o/
                                V \o/ V     email:pinky@tamu.edu
<>  Sam  Inala  <>                 V
From: ron@argus.lpl.Arizona.EDU (Ron Watkins)
Newsgroups: comp.lang.c
Subject: Source for limb.a
Keywords: libm.a sources
Date: 25 Jan 93 19:31:10 GMT
Organization: Lunar and Planetary Lab, U of AZ

Im looking for the source to limb.a. Im using Linux 0.99.4 for a 386 PC
computer. The sources must be available as there is no other licencing that I
know of other than the GNU licence on Linux. Is there a place where this is
available? e-mail only please.
				Ron
Newsgroups: comp.lang.c,comp.std.c
From: diamond@jit345.bad.jit.dec.com (Norman Diamond)
Subject: Re: Preprocessor question
Keywords: Preprocessor, string
Reply-To: diamond@jit.dec.com (Norman Diamond)
Organization: Digital Equipment Corporation Japan , Tokyo
Date: Thu, 28 Jan 1993 08:33:05 GMT

In article <C1I4r2.2FF@cmie.ernet.in> rs@cmie.ernet.in (Rajappa Iyer) writes:
>karim@bnrmtl.bnr.ca (Karim Younes) writes:
>>I am trying to have a #defined variable recognized by the
>>preprocessor inside a string.
>>#define JUNK 50
>>static char *junk = "JUNK ways to leave your lover."

Even Reiser's preprocessor didn't do that.  He only did it for arguments
of the macro being expanded, so that if the violation of K&R-1 produced
an effect that the user didn't really want, it could be avoided by a local
change in the macro, without affecting the rest of the program.

>#define JUNK "50"
>static char *junk = JUNK " ways to leave your lover."

Yes this works, but if the user also wanted to use a numeric value of JUNK...
As you said, this fails:
>#define JUNK	50
>#define STR(x)	#x
>char *junk = STR(JUNK) " ways to leave your lover."

>Which kind of makes me question the utility of the `#' preprocessor operator.

char *junk = STR(Fifty) " ways to leave your lover.";
might be perfectly meaningful for some users.

Although ANSI's syntax is ugly, it does provide more options than some
alternatives would.  For example, this works for the original user:

#define JUNK	50
#define STR(x)	STRX(x)
#define STRX(x)	#x
char *junk = STR(JUNK) " ways to leave your lover.";
--
Norman Diamond                diamond@jit.dec.com
If this were the company's opinion, I wouldn't be allowed to post it.
Pardon me?  Or do I have to commit a crime first?
From: ghiya@cs.mcgill.ca (Rakesh GHIYA)
Newsgroups: comp.lang.c
Subject: pointers/function pointers
Date: 25 Jan 93 22:39:52 GMT
Organization: SOCS - Mcgill University, Montreal, Canada

Hi there,

We have been trying to develop some robust static analysis tools
to help better understanding of C programs. Pointers pose the
real  big challenge in compile time analysis of C programs, and
we have put in a lot of work in developing efficient alias analysis
tools.

Now is the time for a litmus test of the correctness and usefulness
of these tools. Could you give us a helping hand in this task by
mailing to us some pointer heavy programs, preferably contained in
a single file, around 4,000 lines of code and reasonably readable...

Hoping for a warm response,

Thanks in advance,

Rakesh Ghiya
School of Computer Science
McGill Univ, Montreal, CANADA.

ghiya@binkley.cs.mcgill.ca


*****************************************************************

Make your contribution towards improving the analyzability of

C programs, NOW !!!  Send us your C programs....


*****************************************************************
~
~
From: jm59@prism.gatech.EDU (MILLS,JOHN M.)
Newsgroups: comp.lang.c
Subject: Re: Looking for an X based 'rcs'
Date: 28 Jan 93 15:19:48 GMT
Organization: Georgia Institute of Technology

We use DEC CMS (Code Management System) under VMS, and have been happy
with it in several library setups.  Not particularly X-window, however.

If you're just managing a library, what is important about the X-window
functionality.  (I confess to total ignorance here.)

Regards --jmm--

-- 
John M. Mills, SRE; Georgia Tech/GTRI/TSDL, Atlanta, GA 30332
uucp: ...!{decvax,hplabs,ncar,purdue,rutgers}!gatech!prism!jm59
Internet: john.mills@gtri.gatech.edu
C++: "Increment C, then return the old value"  - anon
From: hartman@ulogic.UUCP (Richard M. Hartman)
Newsgroups: comp.lang.c
Subject: Re: What makes a good designer (was Re: Any hope for me..? )
Date: 25 Jan 93 13:38:02 GMT
Organization: negligable

In article <C170pq.530@cmie.ernet.in> rs@cmie.ernet.in (Rajappa Iyer) writes:
>hartman@ulogic.UUCP (Richard M. Hartman) writes:
>>:Hmm... so what would you say go into making a good designer? Incidentally,
>>:don't you find the distinction between "programmer" and "designer" or
>>:"architect" unnatural?
>
>>Between programming & design? no.  There is a definate difference.
>>Between design and architect? ???.  As far as I can tell they are 
>>the same thing -- tell me what you think they mean and I can tell
>>you if I think that distinction is unnatural. <g>
>
>Oh, I meant to use "designer" and "architect" as synonyms. So the
>question was: "Do you find the distinction between "programmers" and
>"designers" (or "programmers" and "architects") unnatural?
>
>Let me explain why I find this concept a little unnatural. To me, the
>process of programming involves making design decisions at a certain
>level (e.g. choice of data structures, program structure etc.) while
>that of "system design" involves decisions at a different level of
>abstraction. So both "programmers" and "designers" design and calling
>one a programmer and another a designer does not (to my mind) seem to
>do justice to the fact that a programmer, is, in fact a designer. So
>what do you think of "Program Designer" and "System Designer"?
>
>Also, at some of the places that I have worked in, there is a concept
>of a "coder" or an implementor who is supposed to mindlessly translate
>program specs written by an analyst-programmer to actual code. What do
>you think of such a model?

As a designer/programmer myself (doing both jobs) I can understand
your viewpoint that they might be the same thing.  But I have also
designed systems for others to implement.  Sometimes such design
is limited to describing the function of each task.  Sometimes it
is in more detail -- describing each function, perhaps data structures.
But once those are handed off to "implementors" such initial design
decisions might have to be altered by implementation considerations.
That doesn't make the implementor a designer, it just means that the
design (an abstract thing) needed to be corrected in light of reality.
(or that the implementor isn't as smart as the designer <g>!)  

I have seen a 3-level model where the system design is written by
one level, the interfaces (class definitions, function prototypes)
by another, and the implementation by your "mindless" translators.

The trick, of course, is to pick the appropriate design model according
to the size of the project.  If you only have two people (or a small
job to do), it doesn't make sense to carve it up that way.


		-Richard Hartman
		hartman@ulogic.COM

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
glockh belvars: cannot recover
Newsgroups: comp.lang.c
From: sff@mobrad.demon.co.uk.demon.co.uk (Sean Fitt)