- Apr 16, 2011
-
-
Douglas Gregor authored
llvm-svn: 129614
-
- Mar 23, 2011
-
-
Douglas Gregor authored
which versions of an OS provide a certain facility. For example, void foo() __attribute__((availability(macosx,introduced=10.2,deprecated=10.4,obsoleted=10.6))); says that the function "foo" was introduced in 10.2, deprecated in 10.4, and completely obsoleted in 10.6. This attribute ties in with the deployment targets (e.g., -mmacosx-version-min=10.1 specifies that we want to deploy back to Mac OS X 10.1). There are several concrete behaviors that this attribute enables, as illustrated with the function foo() above: - If we choose a deployment target >= Mac OS X 10.4, uses of "foo" will result in a deprecation warning, as if we had placed attribute((deprecated)) on it (but with a better diagnostic) - If we choose a deployment target >= Mac OS X 10.6, uses of "foo" will result in an "unavailable" warning (in C)/error (in C++), as if we had placed attribute((unavailable)) on it - If we choose a deployment target prior to 10.2, foo() is weak-imported (if it is a kind of entity that can be weak imported), as if we had placed the weak_import attribute on it. Naturally, there can be multiple availability attributes on a declaration, for different platforms; only the current platform matters when checking availability attributes. The only platforms this attribute currently works for are "ios" and "macosx", since we already have -mxxxx-version-min flags for them and we have experience there with macro tricks translating down to the deprecated/unavailable/weak_import attributes. The end goal is to open this up to other platforms, and even extension to other "platforms" that are really libraries (say, through a #pragma clang define_system), but that hasn't yet been designed and we may want to shake out more issues with this narrower problem first. Addresses <rdar://problem/6690412>. As a drive-by bug-fix, if an entity is both deprecated and unavailable, we only emit the "unavailable" diagnostic. llvm-svn: 128127
-
- Feb 12, 2011
-
-
Jeffrey Yasskin authored
I also sorted the tools/driver dependencies since their order no longer matters. llvm-svn: 125417
-
- Feb 10, 2011
-
-
NAKAMURA Takumi authored
llvm-svn: 125275
-
- Nov 23, 2010
-
-
Chris Lattner authored
its own header and giving it some more structure. No functionality change. llvm-svn: 120030
-
- Nov 18, 2010
-
-
Benjamin Kramer authored
llvm-svn: 119741
-
- Oct 22, 2010
-
-
Oscar Fuentes authored
See PR 8473. llvm-svn: 117110
-
- Sep 14, 2010
-
-
Michael J. Spencer authored
This reverts commit r113631 Conflicts: CMakeLists.txt lib/CodeGen/CMakeLists.txt llvm-svn: 113817
-
- Sep 10, 2010
-
-
Michael J. Spencer authored
of whatever we were using before... llvm-svn: 113631
-
- Jun 17, 2010
-
-
Douglas Gregor authored
llvm-svn: 106220
-
Alexis Hunt authored
llvm-svn: 106188
-
- Oct 24, 2009
-
-
Daniel Dunbar authored
llvm-svn: 85015
-
- Oct 05, 2009
-
-
Douglas Gregor authored
branch/revision information. Use that information in the driver, rather than one-off branch/revision computation. llvm-svn: 83321
-
- Jun 14, 2009
-
-
Chris Lattner authored
fixes a layering violation in lib/Basic/Targets.cpp. llvm-svn: 73318
-
- Apr 22, 2009
-
-
Douglas Gregor authored
headers. Future approaches to (de-)serializing ASTs will be based on the PCH infrastructure. llvm-svn: 69828
-
Chris Lattner authored
llvm-svn: 69819
-
- Apr 01, 2009
-
-
http://www.unicode.org/Public/PROGRAMS/CVTUTFSteve Naroff authored
#ifdef'd out the 5 conversion routines that we don't currently need. Still need a bit more work in GetAddrOfConstantCFString(). Added a FIXME to indicate this. Expect to remove the FIXME today... llvm-svn: 68208
-
- Mar 17, 2009
-
-
Douglas Gregor authored
diagnostics. This builds on the patch that Sebastian committed and then revert. Major differences are: - We don't remove or use the current ".def" files. Instead, for now, we just make sure that we're building the ".inc" files. - Fixed CMake makefiles to run TableGen and build the ".inc" files when needed. Tested with both the Xcode and Makefile generators provided by CMake, so it should be solid. - Fixed normal makefiles to handle out-of-source builds that involve the ".inc" files. I'll send a separate patch to the list with Sebastian's changes that eliminate the use of the .def files. llvm-svn: 67058
-
- Oct 26, 2008
-
-
Oscar Fuentes authored
must be under the `tools' subdirectory of the LLVM *source* tree. llvm-svn: 58180
-