From owner-freebsd-hackers Fri Aug 10 17:51: 4 2001 Delivered-To: freebsd-hackers@freebsd.org Received: from digitaldaemon.com (digitaldaemon.com [63.105.9.34]) by hub.freebsd.org (Postfix) with SMTP id EA32A37B403 for ; Fri, 10 Aug 2001 17:50:58 -0700 (PDT) (envelope-from jan@digitaldaemon.com) Received: (qmail 93403 invoked from network); 11 Aug 2001 00:48:50 -0000 Received: from unknown (HELO digitaldaemon.com) (192.168.0.73) by digitaldaemon.com with SMTP; 11 Aug 2001 00:48:50 -0000 Message-ID: <3B7480E7.6070406@digitaldaemon.com> Date: Fri, 10 Aug 2001 20:48:39 -0400 From: Jan Knepper User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.2) Gecko/20010726 Netscape6/6.1 X-Accept-Language: en-us MIME-Version: 1.0 To: FreeBSD Hackers Subject: Re: the =+ operator References: <3B73F0BC.548D40B3@home.com> <3B73F595.CD12F8AA@mitre.org> <3B747B35.CCA4C6D1@home.com> Content-Type: multipart/alternative; boundary="------------000401060602010107040906" Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG --------------000401060602010107040906 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit I just checked on this "=+" and "=-" with the guy that wrote the first native C++ compiler and he does not recall it at first being that way... I have been programming C++ myself for over 10 years and *never* heard this before. I do not know where it comes from. It might have been some mis-implemented C++ syntax in other C++ compilers (GNU?). Need less to say, '=+' as operator would be scary as it is too close to '= +' as in a=+5 or a=-5 for that matter. I have too much respect for Bjarne to think that he would have defined it as '=+' and '=-' in the beginning... Just my two cents. Jan Rob wrote: >Mike Smith wrote: > >>I've been doing this for a long time and today this would be taken as >>two operators. The assignment and unary +. Since A = B is the same as A >>= +B, it would perform the same as a simple assignment. The only reason >>I can see to do this legitimately is for clarity reasons, i.e., if what >>follows the "+" is almost always used as a negative but this use is an >>exception. But more likely, at some point there was something between >>the = and + at one point that got deleted, but the "+" was left. Since >>this is "the default", there would be no coding or operational errors >>from leaving it in. >> >>Then again, it could have been intended to be += and you've found a >>heretofore undiscovered bug! All you have to do is press Shift at the >>wrong time (not that I've ever done that). >> >>Mike Smith >>(but not "THE" Mike Smith) >> >>Rob wrote: >> >>>My first post on hackers, so please don't flame me too bad :) I think >>>that only an old hacker can give me the answer :) >>> >>>I've searched far and wide on search engines to find out what the =+ >>>operator does, to no avail. I'm porting some old code and found it. I >>>made a test program and compiled it with gcc, and all it appears to do >>>is the same as regular assignment. But I'm wondering if in some day >>>long ago, it mean't something else? Thanks, Rob. >>> >>>To Unsubscribe: send mail to majordomo@FreeBSD.org >>>with "unsubscribe freebsd-hackers" in the body of the message >>> > >Thanks Mike, also thanks for everyone elses response. This code is >actually pretty new. It part of a bi-gradient conjugate solver for FEM >simulators. I compiled the original code with gcc, so I'm assuming it >just treated =+ as an =. But just for kicks I also tried +=. In any >case I have some other bugs in it that I have to track down since >no-matter which way I tried the assignment, my solutions fail to >converge :( Rob. > >To Unsubscribe: send mail to majordomo@FreeBSD.org >with "unsubscribe freebsd-hackers" in the body of the message > > --------------000401060602010107040906 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit I just checked on this "=+" and "=-" with the guy that wrote the first native C++ compiler and he does not recall it at first being that way... I have been programming C++ myself for over 10 years and *never* heard this before. I do not know where it comes from. It might have been some mis-implemented C++ syntax in other C++ compilers (GNU?). Need less to say, '=+' as operator would be scary as it is too close to '= +' as in a=+5 or a=-5 for that matter. I have too much respect for Bjarne to think that he would have defined it as '=+' and '=-' in the beginning...

Just my two cents.
Jan



Rob wrote:
Mike Smith wrote:
I've been doing this for a long time and today this would be taken as
two operators. The assignment and unary +. Since A = B is the same as A
= +B, it would perform the same as a simple assignment. The only reason
I can see to do this legitimately is for clarity reasons, i.e., if what
follows the "+" is almost always used as a negative but this use is an
exception. But more likely, at some point there was something between
the = and + at one point that got deleted, but the "+" was left. Since
this is "the default", there would be no coding or operational errors
from leaving it in.

Then again, it could have been intended to be += and you've found a
heretofore undiscovered bug! All you have to do is press Shift at the
wrong time (not that I've ever done that).

Mike Smith
(but not "THE" Mike Smith)

Rob wrote:
My first post on hackers, so please don't flame me too bad :)  I think
that only an old hacker can give me the answer :)

I've searched far and wide on search engines to find out what the =+
operator does, to no avail. I'm porting some old code and found it. I
made a test program and compiled it with gcc, and all it appears to do
is the same as regular assignment. But I'm wondering if in some day
long ago, it mean't something else? Thanks, Rob.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message

Thanks Mike, also thanks for everyone elses response. This code is
actually pretty new. It part of a bi-gradient conjugate solver for FEM
simulators. I compiled the original code with gcc, so I'm assuming it
just treated =+ as an =. But just for kicks I also tried +=. In any
case I have some other bugs in it that I have to track down since
no-matter which way I tried the assignment, my solutions fail to
converge :( Rob.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



--------------000401060602010107040906-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message