summaryrefslogtreecommitdiffstats
path: root/libcxx/include/__std_stream
Commit message (Collapse)AuthorAgeFilesLines
* Update more file headers across all of the LLVM projects in the monorepoChandler Carruth2019-01-191-4/+3
| | | | | | | | | | | | | | | | | | 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
* [Libc++] Use #pragma push_macro/pop_macro to better handle min/max on WindowsEric Fiselier2017-05-311-2/+6
| | | | | | | | | | | | | | | | Summary: This patch improves how libc++ handles min/max macros within the headers. Previously libc++ would undef them and emit a warning. This patch changes libc++ to use `#pragma push_macro` to save the macro before undefining it, and `#pragma pop_macro` to restore the macros and the end of the header. Reviewers: mclow.lists, bcraig, compnerd, EricWF Reviewed By: EricWF Subscribers: cfe-commits, krytarowski Differential Revision: https://reviews.llvm.org/D33080 llvm-svn: 304357
* clean up some qualifier castingSaleem Abdulrasool2016-12-311-1/+1
| | | | | | | This cleans up the `-Wqual-cast` warnings from gcc 6 when building libc++. NFC. llvm-svn: 290789
* Enable and fix warnings during the build.Eric Fiselier2015-07-181-1/+0
| | | | | | | | | | | | | | | | | Although CMake adds warning flags, they are ignored in the libc++ headers because the headers '#pragma system header' themselves. This patch disables the system header pragma when building libc++ and fixes the warnings that arose. The warnings fixed were: 1. <memory> - anonymous structs are a GNU extension 2. <functional> - anonymous structs are a GNU extension. 3. <__hash_table> - Embedded preprocessor directives have undefined behavior. 4. <string> - Definition is missing noexcept from declaration. 5. <__std_stream> - Unused variable. llvm-svn: 242623
* Partial implementation of N3665. This paper was not voted into the C++1y ↵Howard Hinnant2013-08-091-0/+14
| | | | | | draft. However I was looking at it and with some experimentation realized that I could partially implement it, and at the same time offer a performance optimization to cout. I simply added an xsputn override to the cout filebuf. The override does nothing special at all if there is a non-trivial codecvt installed. However if the codecvt returns true for always_noconv(), then this function can dump an entire string to fwrite, instead of doing it a character at a time under overflow(). This just makes sense. I stopped short of a full implementation of N3665 because in order to do so, xsputn would have to allocate a buffer when always_noconv() returned false, and I don't want to go to that expense. llvm-svn: 188077
* Make cout a little more thread-safe. This fixes ↵Howard Hinnant2013-06-281-10/+9
| | | | | | http://llvm.org/bugs/show_bug.cgi?id=12158 llvm-svn: 185222
* Put a 1-character unget buffer into cin. This fixes ↵Howard Hinnant2013-05-081-20/+49
| | | | | | http://llvm.org/bugs/show_bug.cgi?id=15867 llvm-svn: 181470
* This is an optimization which produces improved launching time. There ↵Howard Hinnant2013-03-191-14/+14
| | | | | | should be no functionality change. Clients should see no ABI differences. llvm-svn: 177443
* This SO question: ↵Howard Hinnant2013-03-111-1/+1
| | | | | | http://stackoverflow.com/questions/15344402/how-can-i-read-a-0xff-in-a-file-with-libc-istream-iterator/15347225#15347225 highlighted the lack of a cast in the implementation of std::cin. Added. I unfortunately don't have a test case to add to the suite since this bug only shows itself when using std::cin. The current testsuite setup does not have a way a good way to test std::cin. llvm-svn: 176822
* Quash a whole bunch of warningsHoward Hinnant2011-12-011-4/+4
| | | | llvm-svn: 145624
* Add protection from min/max macrosHoward Hinnant2011-11-291-0/+2
| | | | llvm-svn: 145407
* Windows support by Ruben Van Boxem.Howard Hinnant2011-10-171-0/+2
| | | | llvm-svn: 142235
* _STD -> _VSTD to avoid macro clash on windowsHoward Hinnant2011-06-301-6/+6
| | | | llvm-svn: 134190
* Chris Jefferson noted many places where function calls needed to be ↵Howard Hinnant2011-02-141-1/+1
| | | | | | qualified (thanks Chris). llvm-svn: 125510
* license changeHoward Hinnant2010-11-161-2/+2
| | | | llvm-svn: 119395
* Wiped out some non-ascii characters that snuck into the copyright.Howard Hinnant2010-05-111-2/+2
| | | | llvm-svn: 103516
* libcxx initial importHoward Hinnant2010-05-111-0/+313
llvm-svn: 103490
OpenPOWER on IntegriCloud