<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/libcxx/include/cstdio, branch meklort-10.0.1</title>
<subtitle>Project Ortega BCM5719 LLVM</subtitle>
<id>https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1</id>
<link rel='self' href='https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/'/>
<updated>2019-09-07T22:18:20+00:00</updated>
<entry>
<title>Remove ::gets for FreeBSD 13 and later</title>
<updated>2019-09-07T22:18:20+00:00</updated>
<author>
<name>Dimitry Andric</name>
<email>dimitry@andric.com</email>
</author>
<published>2019-09-07T22:18:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=5bd4a4806aafc31c67a55c7d8b2993c879dc5bc2'/>
<id>urn:sha1:5bd4a4806aafc31c67a55c7d8b2993c879dc5bc2</id>
<content type='text'>
Summary:
In https://svnweb.freebsd.org/changeset/base/351659 @emaste removed gets() from
FreeBSD 13's libc, and our copies of libc++ and libstdc++.  In that change, the
declarations were simply deleted, but I would like to propose this conditional
test instead.

Reviewers: EricWF, mclow.lists, emaste

Reviewed By: mclow.lists

Subscribers: krytarowski, christof, ldionne, emaste, libcxx-commits

Differential Revision: https://reviews.llvm.org/D67316

llvm-svn: 371324
</content>
</entry>
<entry>
<title>Update more file headers across all of the LLVM projects in the monorepo</title>
<updated>2019-01-19T10:56:40+00:00</updated>
<author>
<name>Chandler Carruth</name>
<email>chandlerc@gmail.com</email>
</author>
<published>2019-01-19T10:56:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=57b08b0944046a6a57ee9b7b479181f548a5b9b4'/>
<id>urn:sha1:57b08b0944046a6a57ee9b7b479181f548a5b9b4</id>
<content type='text'>
to reflect the new license. These used slightly different spellings that
defeated my regular expressions.

We understand that people may be surprised that we're moving the header
entirely to discuss the new license. We checked this carefully with the
Foundation's lawyer and we believe this is the correct approach.

Essentially, all code in the project is now made available by the LLVM
project under our new license, so you will see that the license headers
include that license only. Some of our contributors have contributed
code under our old license, and accordingly, we have retained a copy of
our old license notice in the top-level files in each project and
repository.

llvm-svn: 351648
</content>
</entry>
<entry>
<title>[libc++] Drop support for CRTs older than VS 2015</title>
<updated>2017-04-07T02:20:52+00:00</updated>
<author>
<name>Shoaib Meenai</name>
<email>smeenai@fb.com</email>
</author>
<published>2017-04-07T02:20:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=17af695f2b3d0e72844b2ccfc4fcf7ec6e40bbf2'/>
<id>urn:sha1:17af695f2b3d0e72844b2ccfc4fcf7ec6e40bbf2</id>
<content type='text'>
LLVM dropped support for Visual Studio versions older than 2015 quite
some time ago, so I consider it safe to drop libc++'s support for older
CRTs. The CRT in Visual Studio 2015 provides a lot of previously missing
functions, so targeting it requires less special casing.

Differential Revision: https://reviews.llvm.org/D31798

llvm-svn: 299743
</content>
</entry>
<entry>
<title>[libc++] Remove unnecessary MSVCRT exclusions</title>
<updated>2016-11-08T03:31:42+00:00</updated>
<author>
<name>Shoaib Meenai</name>
<email>smeenai@fb.com</email>
</author>
<published>2016-11-08T03:31:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=76728d88ec5e59bd1498b16c98059113084e7836'/>
<id>urn:sha1:76728d88ec5e59bd1498b16c98059113084e7836</id>
<content type='text'>
Visual Studio 2013 and up have these functions, and we don't need to
support older versions.

There are some remaining _LIBCPP_MSVCRT exclusions which are present on
Visual Studio 2015 but not 2013. Those will be addressed in a follow-up.

Differential Revision: https://reviews.llvm.org/D26377

llvm-svn: 286202
</content>
</entry>
<entry>
<title>cstdio: limit gets to CRT versions below 14</title>
<updated>2016-09-01T21:09:19+00:00</updated>
<author>
<name>Saleem Abdulrasool</name>
<email>compnerd@compnerd.org</email>
</author>
<published>2016-09-01T21:09:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=e68b47070f617ffa8becd3c9d777a93cf2c3b6a8'/>
<id>urn:sha1:e68b47070f617ffa8becd3c9d777a93cf2c3b6a8</id>
<content type='text'>
Microsoft removed gets from the CRT in Visual Studio 2015 onwards [1].
Attempting to reference it when targeting CRT versions 14 and above will cause
compile errors.

[1] https://msdn.microsoft.com/en-us/library/2029ea5f.aspx

Patch by Shoaib Meenai!

llvm-svn: 280417
</content>
</entry>
<entry>
<title>Split &lt;stdio.h&gt; out of &lt;cstdio&gt;.</title>
<updated>2015-10-09T01:29:09+00:00</updated>
<author>
<name>Richard Smith</name>
<email>richard-llvm@metafoo.co.uk</email>
</author>
<published>2015-10-09T01:29:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=d32827408e9af920ab62061fe179d8bc80f22f1e'/>
<id>urn:sha1:d32827408e9af920ab62061fe179d8bc80f22f1e</id>
<content type='text'>
As with &lt;stddef.h&gt;, skip our custom header if __need_FILE or __need___FILE is defined.

llvm-svn: 249798
</content>
</entry>
<entry>
<title>Remove unnecessary inline functions capturing the contents of C library macros.</title>
<updated>2015-10-06T22:03:22+00:00</updated>
<author>
<name>Richard Smith</name>
<email>richard-llvm@metafoo.co.uk</email>
</author>
<published>2015-10-06T22:03:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=1607bb38b61a889128c014f1e51cf4465512aa04'/>
<id>urn:sha1:1607bb38b61a889128c014f1e51cf4465512aa04</id>
<content type='text'>
The C standard requires that these be provided as functions even if they're
also provided as macros, and a strict reading of the C++ standard library rules
suggests that (for instance) &amp;::isdigit == &amp;::std::isdigit, so these wrappers
are technically non-conforming.

llvm-svn: 249475
</content>
</entry>
<entry>
<title>Make the presence of stdin and stdout optional.</title>
<updated>2015-03-26T14:35:46+00:00</updated>
<author>
<name>Ed Schouten</name>
<email>ed@nuxi.nl</email>
</author>
<published>2015-03-26T14:35:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=f4ac884f2bc299aab6afaf8bb2831f414d819f52'/>
<id>urn:sha1:f4ac884f2bc299aab6afaf8bb2831f414d819f52</id>
<content type='text'>
The idea behind Nuxi CloudABI is that it is targeted at (but not limited to)
running networked services in a sandboxed environment. The model behind stdin,
stdout and stderr is strongly focused on interactive tools in a command shell.
CloudABI does not support the notion of stdin and stdout, as 'standard
input/output' does not apply to services. The concept of stderr does makes
sense though, as services do need some mechanism to log error messages in a
uniform way.

This patch extends libc++ in such a way that std::cin and std::cout and the
associated &lt;cstdio&gt;/&lt;cwchar&gt; functions can be disabled through the flags
_LIBCPP_HAS_NO_STDIN and _LIBCPP_HAS_NO_STDOUT, respectively. At the same time
it attempts to clean up src/iostream.cpp a bit. Instead of using a single array
of mbstate_t objects and hardcoding the array indices, it creates separate
objects that declared next to the iostream objects and their buffers. The code
is also restructured by interleaving the construction and setup of c* and wc*
objects. That way it is more obvious that this is done identically.

The c* and wc* objects already have separate unit tests. Make use of this fact
by adding XFAILs in case libcpp-has-no-std* is set. That way the tests work in
both directions. If stdin or stdout is disabled, these tests will therefore
test for the absence of c* and wc*.

Differential Revision:	http://reviews.llvm.org/D8340

llvm-svn: 233275
</content>
</entry>
<entry>
<title>Add option to disable access to the global filesystem namespace.</title>
<updated>2015-03-12T15:44:39+00:00</updated>
<author>
<name>Ed Schouten</name>
<email>ed@nuxi.nl</email>
</author>
<published>2015-03-12T15:44:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=97fdea618ea5f1d8837779917cab160376528cff'/>
<id>urn:sha1:97fdea618ea5f1d8837779917cab160376528cff</id>
<content type='text'>
Systems like FreeBSD's Capsicum and Nuxi CloudABI apply the concept of
capability-based security on the way processes can interact with the
filesystem API. It is no longer possible to interact with the VFS
through calls like open(), unlink(), rename(), etc. Instead, processes
are only allowed to interact with files and directories to which they
have been granted access. The *at() functions can be used for this
purpose.

This change adds a new config switch called
_LIBCPP_HAS_NO_GLOBAL_FILESYSTEM_NAMESPACE. If set, all functionality
that requires the global filesystem namespace will be disabled. More
concretely:

- fstream's open() function will be removed.
- cstdio will no longer pull in fopen(), rename(), etc.
- The test suite's get_temp_file_name() will be removed. This will cause
  all tests that use the global filesystem namespace to break, but will
  at least make all the other tests run (as get_temp_file_name will not
  build anyway).

It is important to mention that this change will make fstream rather
useless on those systems for now. Still, I'd rather not have fstream
disabled entirely, as it is of course possible to come up with an
extension for fstream that would allow access to local filesystem
namespaces (e.g., by adding an openat() member function).

Differential revision:	http://reviews.llvm.org/D8194
Reviewed by:		jroelofs (thanks!)

llvm-svn: 232049
</content>
</entry>
<entry>
<title>Support Newlib as libc++'s C library [cstdio part, part 2]</title>
<updated>2015-01-10T00:08:00+00:00</updated>
<author>
<name>Jonathan Roelofs</name>
<email>jonathan@codesourcery.com</email>
</author>
<published>2015-01-10T00:08:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=cba3e4ca21992692491af652fa4e84798ef09990'/>
<id>urn:sha1:cba3e4ca21992692491af652fa4e84798ef09990</id>
<content type='text'>
Wrappers for clearerr, feof, ferror (which newlib implements as macros).

http://reviews.llvm.org/D5420

llvm-svn: 225563
</content>
</entry>
</feed>
