Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 Feb 2014 17:49:57 +0400
From:      Lev Serebryakov <lev@FreeBSD.org>
To:        freebsd-stable@freebsd.org, freebsd-hackers@freebsd.org
Subject:   Why clang bundled with 10-RELEASE doesn't define __has_feature(cxx_nullptr)?
Message-ID:  <717736061.20140207174957@serebryakov.spb.ru>

next in thread | raw e-mail | index | archive | help
Hello, freebsd-stable.

 Why __has_feature(cxx_nulptr) doesn't work on system compiler? nullptr
itself works!

Here is sample program:

============================= test.cxx
#include <memory>

#ifndef __has_feature
#warning "Doesn't support for __has_feature at all"
#define __has_feature(x) 0
#endif

#if __has_feature(cxx_nullptr)
#warning "Has nullptr"
#else
#warning "Doesn't have nullptr"
#endif

int main(int argn, char *argv[]) {
  void *v = nullptr;
  return 0;
}
======================================

> c++ --version
FreeBSD clang version 3.3 (tags/RELEASE_33/final 183502) 20130610
Target: x86_64-unknown-freebsd10.0
Thread model: posix
> c++ test.cxx
test.cxx:11:2: warning: "Doesn't have nullptr" [-W#warnings]
#warning "Doesn't have nullptr"
 ^
1 warning generated.
>

-- 
// Black Lion AKA Lev Serebryakov <lev@FreeBSD.org>




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?717736061.20140207174957>