Nmap Development mailing list archives

Re: Use of ISO646 feature


From: Daniel Miller <bonsaiviking () gmail com>
Date: Sun, 5 Apr 2015 21:37:33 -0500

On Sun, Apr 5, 2015 at 7:35 PM, David Fifield <david () bamsoftware com> wrote:

On Sun, Apr 05, 2015 at 07:31:12PM -0500, Daniel Miller wrote:
Gisle,

On Sun, Apr 5, 2015 at 7:43 AM, Gisle Vanem <[1]gvanem () yahoo no> wrote:

    While compiling Nnap (latest SVN-repo version) using MSVC v18, I see
    this:

    cl -nologo .. -c TargetGroup.cc
    TargetGroup.cc(641) : error C2146: syntax error : missing ')' before
    identifier 'or'
    TargetGroup.cc(641) : error C2065: 'or' : undeclared identifier

    (gcc includes iso646.h/ciso646 internally). So can you please add
    a '#include <ciso646>' somewhere? Or just drop those IMHO silly
ISO/C++
    features.

    The history of TargetGroup.cc:
      [2]https://github.com/nmap/nmap/commits/master/TargetGroup.cc

    don't indicate when this was added. Is the version at Github
unrelated
    to the real thing at [3]svn.nmap.org/nmap?



I'm sorry, I introduced this on 11 March in r34089. I did not intend to
use
such an odd feature, and I'm surprised it compiled at all. My mind must
not
have been working in C mode. Do you know of a good way to check for
non-standard features like this that I could add to my commit hooks?

I've done this before too, like in r25054. It works in GCC so I didn't
notice right away.


For future reference, -fno-operator-names will make this an error in C++.
It is an error in C regardless unless iso646.h is explicitly included.

Dan
_______________________________________________
Sent through the dev mailing list
https://nmap.org/mailman/listinfo/dev
Archived at http://seclists.org/nmap-dev/

Current thread: