]> granicus.if.org Git - clang/log
clang
15 years agoDriver: Add test for binding of precompile; exposed bug due to my
Daniel Dunbar [Wed, 18 Mar 2009 02:00:31 +0000 (02:00 +0000)]
Driver: Add test for binding of precompile; exposed bug due to my
flawed idea that llvm::sys::Path::getBasename was a version of
basename().

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67153 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUse a work list to recursively build up the subregion mapping, and mark live
Zhongxing Xu [Wed, 18 Mar 2009 01:54:31 +0000 (01:54 +0000)]
Use a work list to recursively build up the subregion mapping, and mark live
var region roots.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67152 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Implement JoinedAndSeparateArg::getValue and add parsing test
Daniel Dunbar [Wed, 18 Mar 2009 01:48:37 +0000 (01:48 +0000)]
Driver: Implement JoinedAndSeparateArg::getValue and add parsing test
case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67151 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: UnknownHostInfo was always returning 0.
Daniel Dunbar [Wed, 18 Mar 2009 01:39:08 +0000 (01:39 +0000)]
Driver: UnknownHostInfo was always returning 0.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67150 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Use PrettyStackTrace.
Daniel Dunbar [Wed, 18 Mar 2009 01:38:48 +0000 (01:38 +0000)]
Driver: Use PrettyStackTrace.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67149 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agocleanup instantiation code, tighten testcase
Gabor Greif [Wed, 18 Mar 2009 01:16:08 +0000 (01:16 +0000)]
cleanup instantiation code, tighten testcase

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67148 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix failing test case.
Anders Carlsson [Wed, 18 Mar 2009 01:10:22 +0000 (01:10 +0000)]
Fix failing test case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67147 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Release Host, ToolChain, and Tool implementations.
Daniel Dunbar [Wed, 18 Mar 2009 01:09:40 +0000 (01:09 +0000)]
Driver: Release Host, ToolChain, and Tool implementations.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67146 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoinstantiate ?: expressions
Gabor Greif [Wed, 18 Mar 2009 00:55:04 +0000 (00:55 +0000)]
instantiate ?: expressions

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67145 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoThe scope representation can now be either a DeclContext pointer or a
Douglas Gregor [Wed, 18 Mar 2009 00:36:05 +0000 (00:36 +0000)]
The scope representation can now be either a DeclContext pointer or a
Type pointer. This allows our nested-name-specifiers to retain more
information about the actual spelling (e.g., which typedef did the
user name, or what exact template arguments were used in the
template-id?). It will also allow us to have dependent
nested-name-specifiers that don't map to any DeclContext.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67140 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Add test case for -ccc-clang-archs (which, it turns out, was
Daniel Dunbar [Wed, 18 Mar 2009 00:12:31 +0000 (00:12 +0000)]
Driver: Add test case for -ccc-clang-archs (which, it turns out, was
inverted).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67135 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoSmall sanity-checking testcase
Douglas Gregor [Tue, 17 Mar 2009 23:49:44 +0000 (23:49 +0000)]
Small sanity-checking testcase

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67133 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Add test case for various parts of binding (no-integrated-cpp,
Daniel Dunbar [Tue, 17 Mar 2009 23:39:24 +0000 (23:39 +0000)]
Driver: Add test case for various parts of binding (no-integrated-cpp,
-ccc-no-clang, -ccc-no-clang-cxx, -ccc-no-clang-cpp, -fsyntax-only).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67131 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoTest had extra line which was masking actual failures.
Daniel Dunbar [Tue, 17 Mar 2009 23:30:47 +0000 (23:30 +0000)]
Test had extra line which was masking actual failures.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67130 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Add test for pipelining for analyzer and precompiler.
Daniel Dunbar [Tue, 17 Mar 2009 23:26:35 +0000 (23:26 +0000)]
Driver: Add test for pipelining for analyzer and precompiler.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67129 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agopull a nested conditional + comment out into its own variable,
Chris Lattner [Tue, 17 Mar 2009 23:17:04 +0000 (23:17 +0000)]
pull a nested conditional + comment out into its own variable,
no functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67128 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agodon't crash when sentinel attribute is used on function without a prototype,
Chris Lattner [Tue, 17 Mar 2009 23:03:47 +0000 (23:03 +0000)]
don't crash when sentinel attribute is used on function without a prototype,
discovered as part of PR3817

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67127 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix Type::getDesugaredType() to remove all direct sugar on
Chris Lattner [Tue, 17 Mar 2009 22:51:02 +0000 (22:51 +0000)]
Fix Type::getDesugaredType() to remove all direct sugar on
a type.  For example, if we have a typedef of a typeof of
int, we strip all the say down to int.  This allows us to
simplify the getAs* methods, and is the first step towards
fixing PR3817

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67126 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Add -ccc-print-bindings option (for testing); the Python
Daniel Dunbar [Tue, 17 Mar 2009 22:47:06 +0000 (22:47 +0000)]
Driver: Add -ccc-print-bindings option (for testing); the Python
driver has no corresponding option.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67125 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Add name to Tool (for testing/debugging) and move GCC_* tools
Daniel Dunbar [Tue, 17 Mar 2009 22:45:24 +0000 (22:45 +0000)]
Driver: Add name to Tool (for testing/debugging) and move GCC_* tools
into gcc:: namespace.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67120 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoStub out some code for support for NSDeallocateObject. This is enabled yet until
Ted Kremenek [Tue, 17 Mar 2009 22:43:44 +0000 (22:43 +0000)]
Stub out some code for support for NSDeallocateObject. This is enabled yet until
we resolve the semantics of this function when GC is enabled.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67116 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoGCC 4.0 isn't happy with VISIBILITY_HIDDEN on a namespace.
Chris Lattner [Tue, 17 Mar 2009 22:24:01 +0000 (22:24 +0000)]
GCC 4.0 isn't happy with VISIBILITY_HIDDEN on a namespace.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67112 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: GCC 4.0 isn't happy with VISIBILITY_HIDDEN on a namespace.
Daniel Dunbar [Tue, 17 Mar 2009 22:18:43 +0000 (22:18 +0000)]
Driver: GCC 4.0 isn't happy with VISIBILITY_HIDDEN on a namespace.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67110 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Stub out generic GCC tool selection (missed a file)
Daniel Dunbar [Tue, 17 Mar 2009 22:07:58 +0000 (22:07 +0000)]
Driver: Stub out generic GCC tool selection (missed a file)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67109 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Stub out generic GCC tool selection.
Daniel Dunbar [Tue, 17 Mar 2009 22:07:31 +0000 (22:07 +0000)]
Driver: Stub out generic GCC tool selection.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67108 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Stub out generic GCC tool chain implementation.
Daniel Dunbar [Tue, 17 Mar 2009 21:38:00 +0000 (21:38 +0000)]
Driver: Stub out generic GCC tool chain implementation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67107 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Make sure to get the default arch name from the tool chain, not the
Daniel Dunbar [Tue, 17 Mar 2009 21:29:52 +0000 (21:29 +0000)]
Driver: Make sure to get the default arch name from the tool chain, not the
host; the toolchain may differ based on command line arguments.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67106 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Pass HostInfo reference into ToolChain.
Daniel Dunbar [Tue, 17 Mar 2009 21:21:26 +0000 (21:21 +0000)]
Driver: Pass HostInfo reference into ToolChain.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67105 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRefactor instantiation of declarations within a template into a much
Douglas Gregor [Tue, 17 Mar 2009 21:15:40 +0000 (21:15 +0000)]
Refactor instantiation of declarations within a template into a much
cleaner visitor framework.

Added a visitor for declarations, which is quite similar to the
visitor for statatements.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67104 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Pass Driver reference down into Host info, which will need it
Daniel Dunbar [Tue, 17 Mar 2009 20:45:45 +0000 (20:45 +0000)]
Driver: Pass Driver reference down into Host info, which will need it
to pass to ToolChains, which may need Driver specific information (for
example, to form search paths).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67102 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Fix typo ArgList destructor.
Daniel Dunbar [Tue, 17 Mar 2009 20:44:29 +0000 (20:44 +0000)]
Driver: Fix typo ArgList destructor.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67101 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoretain/release checker: Add support for reasoning about -dealloc.
Ted Kremenek [Tue, 17 Mar 2009 19:42:23 +0000 (19:42 +0000)]
retain/release checker: Add support for reasoning about -dealloc.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67094 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoImplement instantiation of enums within class templates. This isn't
Douglas Gregor [Tue, 17 Mar 2009 19:05:46 +0000 (19:05 +0000)]
Implement instantiation of enums within class templates. This isn't
quite as great as it sounds, because, while we can refer to the
enumerator values outside the template, e.g.,

  adder<long, 3, 4>::value

we can't yet refer to them with dependent names, so no Fibonacci
(yet).

InstantiateClassTemplateSpecialization is getting messy; next commit
will put it into a less-ugly state.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67092 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Hide HostInfo implementations.
Daniel Dunbar [Tue, 17 Mar 2009 19:00:50 +0000 (19:00 +0000)]
Driver: Hide HostInfo implementations.
 - Also, normalize arch names a tad and stub out getToolChain
   implementations.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67091 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Add two option form of ArgList::getLastArg.
Daniel Dunbar [Tue, 17 Mar 2009 18:51:42 +0000 (18:51 +0000)]
Driver: Add two option form of ArgList::getLastArg.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67090 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Add logic for computing where to put job outputs (pipe,
Daniel Dunbar [Tue, 17 Mar 2009 17:53:55 +0000 (17:53 +0000)]
Driver: Add logic for computing where to put job outputs (pipe,
temporary file, user provided name, derived name).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67088 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Add list of temporary and result files to Compilation.
Daniel Dunbar [Tue, 17 Mar 2009 17:51:56 +0000 (17:51 +0000)]
Driver: Add list of temporary and result files to Compilation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67087 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd ArgList::MakeArgString and make ArgList::Make* const.
Daniel Dunbar [Tue, 17 Mar 2009 17:51:18 +0000 (17:51 +0000)]
Add ArgList::MakeArgString and make ArgList::Make* const.
 - Slightly strange, but the idea is that the ArgList data structure
   is primarily a list of arguments; we want to allow clients to still
   add argument strings to an ArgList to avoid worrying about string
   lifetimes (or unnecessary string copying).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67086 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agotypo
Gabor Greif [Tue, 17 Mar 2009 11:39:38 +0000 (11:39 +0000)]
typo

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67081 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoInitialize the cleanup.dst variable if necessary. Fixes PR3789.
Anders Carlsson [Tue, 17 Mar 2009 05:53:35 +0000 (05:53 +0000)]
Initialize the cleanup.dst variable if necessary. Fixes PR3789.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67075 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoWe want to grep the output, not the input :-)
Anders Carlsson [Tue, 17 Mar 2009 05:49:13 +0000 (05:49 +0000)]
We want to grep the output, not the input :-)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67074 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix unused variable warning in -Asserts mode.
Daniel Dunbar [Tue, 17 Mar 2009 04:12:06 +0000 (04:12 +0000)]
Fix unused variable warning in -Asserts mode.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67073 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoHandle ImplicitCastExprs when instantiating templates.
Anders Carlsson [Tue, 17 Mar 2009 00:28:02 +0000 (00:28 +0000)]
Handle ImplicitCastExprs when instantiating templates.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67063 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix struct field's debug info.
Devang Patel [Mon, 16 Mar 2009 23:47:53 +0000 (23:47 +0000)]
Fix struct field's debug info.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67062 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix a problem noticed by Anders, where we were creating
Douglas Gregor [Mon, 16 Mar 2009 23:35:25 +0000 (23:35 +0000)]
Fix a problem noticed by Anders, where we were creating
IntegerLiterals during instantiation when we should be creating either
a boolean literal (CXXBoolLiteralExpr) or a character literal
(CharacterLiteral).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67061 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAlmost complete implementation of rvalue references. One bug, and a few unclear areas...
Sebastian Redl [Mon, 16 Mar 2009 23:22:08 +0000 (23:22 +0000)]
Almost complete implementation of rvalue references. One bug, and a few unclear areas. Maybe Doug can shed some light on some of the fixmes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67059 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoBuild system changes to use TableGen to generate the various
Douglas Gregor [Mon, 16 Mar 2009 23:06:59 +0000 (23:06 +0000)]
Build system changes to use TableGen to generate the various
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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67058 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agosome updates, Daniel points out that this is woefully out of date.
Chris Lattner [Mon, 16 Mar 2009 20:06:22 +0000 (20:06 +0000)]
some updates, Daniel points out that this is woefully out of date.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67050 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agosimplify this code by reading the decision from LangOptions instead
Chris Lattner [Mon, 16 Mar 2009 18:41:18 +0000 (18:41 +0000)]
simplify this code by reading the decision from LangOptions instead
of recomputing the property from command line options.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67047 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoCheck signedness of bitfield sizes.
Anders Carlsson [Mon, 16 Mar 2009 18:19:21 +0000 (18:19 +0000)]
Check signedness of bitfield sizes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67045 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoWe support static_assert.
Anders Carlsson [Mon, 16 Mar 2009 17:28:26 +0000 (17:28 +0000)]
We support static_assert.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67043 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Implement majority tool binding logic.
Daniel Dunbar [Mon, 16 Mar 2009 06:56:51 +0000 (06:56 +0000)]
Driver: Implement majority tool binding logic.
 - Still need code for determining proper output location.

 - Doesn't work yet, of course, as the host isn't providing real
   tool chains.

 - Interface still has a few warts, but has gotten a nice bit of
   polish during the rewrite.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67038 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Migrate some data into the Compilation; after pipelining
Daniel Dunbar [Mon, 16 Mar 2009 06:42:30 +0000 (06:42 +0000)]
Driver: Migrate some data into the Compilation; after pipelining
access to most data should go through the current Compilation, not the
Driver (which shouldn't be specialized on variables for a single
compilation).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67037 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Sketch Tool and ToolChain classes.
Daniel Dunbar [Mon, 16 Mar 2009 05:25:36 +0000 (05:25 +0000)]
Driver: Sketch Tool and ToolChain classes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67036 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Include Casting header definitions in a few places, add
Daniel Dunbar [Mon, 16 Mar 2009 05:17:44 +0000 (05:17 +0000)]
Driver: Include Casting header definitions in a few places, add
Action::getInputs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67035 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoParser support for rvalue references.
Sebastian Redl [Sun, 15 Mar 2009 22:02:01 +0000 (22:02 +0000)]
Parser support for rvalue references.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67033 91177308-0d34-0410-b5e6-96231b3b80d8

15 years ago(Hopefully) instantiate dependent array types correctly.
Anders Carlsson [Sun, 15 Mar 2009 20:12:13 +0000 (20:12 +0000)]
(Hopefully) instantiate dependent array types correctly.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67032 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoHandle static_asserts when instantiating structs.
Anders Carlsson [Sun, 15 Mar 2009 18:44:04 +0000 (18:44 +0000)]
Handle static_asserts when instantiating structs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67031 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd the ability to clone integer and string literals. Use it when instantiating templ...
Anders Carlsson [Sun, 15 Mar 2009 18:34:13 +0000 (18:34 +0000)]
Add the ability to clone integer and string literals. Use it when instantiating template expressions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67030 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoConvert a bunch of actions to smart pointers, and also bring PrintParserCallbacks...
Sebastian Redl [Sun, 15 Mar 2009 17:47:39 +0000 (17:47 +0000)]
Convert a bunch of actions to smart pointers, and also bring PrintParserCallbacks a bit more in line with reality.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67029 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix bitfield-instantiation ownership bug noticed by Anders
Douglas Gregor [Sun, 15 Mar 2009 17:43:26 +0000 (17:43 +0000)]
Fix bitfield-instantiation ownership bug noticed by Anders

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67028 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake sure to release the expressions.
Anders Carlsson [Sun, 15 Mar 2009 17:35:16 +0000 (17:35 +0000)]
Make sure to release the expressions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67027 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoKeep diagnostic td in sync with r67015.
Sebastian Redl [Sun, 15 Mar 2009 10:42:31 +0000 (10:42 +0000)]
Keep diagnostic td in sync with r67015.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67026 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoAdd note on theoretical IRgen improvement.
Daniel Dunbar [Sun, 15 Mar 2009 06:39:56 +0000 (06:39 +0000)]
Add note on theoretical IRgen improvement.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67024 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRemove a FIXME.
Daniel Dunbar [Sun, 15 Mar 2009 06:05:20 +0000 (06:05 +0000)]
Remove a FIXME.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67022 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoFix comment typo.
Daniel Dunbar [Sun, 15 Mar 2009 05:58:43 +0000 (05:58 +0000)]
Fix comment typo.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67021 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoOnly intptr_t is protected by __intptr_t_defined.
Daniel Dunbar [Sun, 15 Mar 2009 03:16:47 +0000 (03:16 +0000)]
Only intptr_t is protected by __intptr_t_defined.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67018 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Typo fix.
Daniel Dunbar [Sun, 15 Mar 2009 01:46:37 +0000 (01:46 +0000)]
Driver: Typo fix.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67017 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: claim input arguments when building phases.
Daniel Dunbar [Sun, 15 Mar 2009 01:40:22 +0000 (01:40 +0000)]
Driver: claim input arguments when building phases.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67016 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Start warning about unused arguments.
Daniel Dunbar [Sun, 15 Mar 2009 01:38:15 +0000 (01:38 +0000)]
Driver: Start warning about unused arguments.
 - This has a number of current flaws, enabling now to flush out
   problems while bringing up other parts.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67015 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Update ArgList::{hasArg,getLastArg} to optionally claim the
Daniel Dunbar [Sun, 15 Mar 2009 00:48:16 +0000 (00:48 +0000)]
Driver: Update ArgList::{hasArg,getLastArg} to optionally claim the
arguments if they exist.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67014 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDon't accept '$' in identifiers in assembler-with-cpp mode.
Daniel Dunbar [Sun, 15 Mar 2009 00:11:28 +0000 (00:11 +0000)]
Don't accept '$' in identifiers in assembler-with-cpp mode.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67013 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRevert the switch to the tablegen diags. It fails for seperate objdir builds and...
Sebastian Redl [Sat, 14 Mar 2009 15:58:54 +0000 (15:58 +0000)]
Revert the switch to the tablegen diags. It fails for seperate objdir builds and cmake builds, and I have no clue what to do about it. Revisit this after someone with a clue about the build systems has looked at it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67009 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoSwitch diagnostics from .def to tablegen files. Please validate the Windows build.
Sebastian Redl [Sat, 14 Mar 2009 12:00:12 +0000 (12:00 +0000)]
Switch diagnostics from .def to tablegen files. Please validate the Windows build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67007 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUpdate tablegen diagnostic files to be in sync with the def files.
Sebastian Redl [Sat, 14 Mar 2009 10:09:49 +0000 (10:09 +0000)]
Update tablegen diagnostic files to be in sync with the def files.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67004 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUpdate checker build.
Ted Kremenek [Sat, 14 Mar 2009 00:46:46 +0000 (00:46 +0000)]
Update checker build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66999 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoHandle dependent types/exprs in static_assert expressions.
Anders Carlsson [Sat, 14 Mar 2009 00:33:21 +0000 (00:33 +0000)]
Handle dependent types/exprs in static_assert expressions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66997 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoRemove dead DeclarationName constructors that involving knowing about the
Ted Kremenek [Sat, 14 Mar 2009 00:27:40 +0000 (00:27 +0000)]
Remove dead DeclarationName constructors that involving knowing about the
internal implementation of Selector.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66996 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMore static_assert work. Check that the assert expr is valid and show an error if...
Anders Carlsson [Sat, 14 Mar 2009 00:25:26 +0000 (00:25 +0000)]
More static_assert work. Check that the assert expr is valid and show an error if it's false. Create the declaration and add it to the current context.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66995 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoCheck for overflow and signedness problems with template
Douglas Gregor [Sat, 14 Mar 2009 00:20:21 +0000 (00:20 +0000)]
Check for overflow and signedness problems with template
arguments. Eliminates a FIXME.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66993 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake Selector::getIdentifierInfo() private. I took a first attempt at this last
Ted Kremenek [Sat, 14 Mar 2009 00:20:08 +0000 (00:20 +0000)]
Make Selector::getIdentifierInfo() private. I took a first attempt at this last
week in:

http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20090302/013580.html

That patch caused the output of the diagnostics to change. Since
'DeclarationName' can already reason about Selectors and the Diagnostics logic
reasons about DeclarationName, there is no additional code needed to get the
diagnostics working by making Selector::getIdentifierInfo() private.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66992 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDon't run simplify lib calls with -ffreestanding (fix for already
Daniel Dunbar [Sat, 14 Mar 2009 00:15:04 +0000 (00:15 +0000)]
Don't run simplify lib calls with -ffreestanding (fix for already
failing test case).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66991 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoMake sure that the canonical representation of integral template arguments uses the...
Douglas Gregor [Sat, 14 Mar 2009 00:03:48 +0000 (00:03 +0000)]
Make sure that the canonical representation of integral template arguments uses the bitwidth and signedness of the template parameter

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66990 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoImplement template instantiation for the prefix unary operators. As
Douglas Gregor [Fri, 13 Mar 2009 23:49:33 +0000 (23:49 +0000)]
Implement template instantiation for the prefix unary operators. As
always, refactored the existing logic to tease apart the parser action
and the semantic analysis shared by the parser and template
instantiation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66987 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Add types::{isAcceptedByClang,isCXX} predicates.
Daniel Dunbar [Fri, 13 Mar 2009 23:46:19 +0000 (23:46 +0000)]
Driver: Add types::{isAcceptedByClang,isCXX} predicates.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66986 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Add simple Job classes, simple wrappers for information about
Daniel Dunbar [Fri, 13 Mar 2009 23:36:33 +0000 (23:36 +0000)]
Driver: Add simple Job classes, simple wrappers for information about
what processes to execute during a compilation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66985 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDo up codegen for function static data and externs in functions in block
Mike Stump [Fri, 13 Mar 2009 23:34:28 +0000 (23:34 +0000)]
Do up codegen for function static data and externs in functions in block
literals.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66984 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoPass more sane arguments to ActOnStaticAssertDeclaration
Anders Carlsson [Fri, 13 Mar 2009 23:29:20 +0000 (23:29 +0000)]
Pass more sane arguments to ActOnStaticAssertDeclaration

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66983 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Action vtables were still hungry.
Daniel Dunbar [Fri, 13 Mar 2009 23:17:57 +0000 (23:17 +0000)]
Driver: Action vtables were still hungry.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66980 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoBlockDecl::Destroy now deallocates BlockDecl's array of ParmVarDecl*.
Ted Kremenek [Fri, 13 Mar 2009 23:17:24 +0000 (23:17 +0000)]
BlockDecl::Destroy now deallocates BlockDecl's array of ParmVarDecl*.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66979 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Provide food and shelter for Action vtables.
Daniel Dunbar [Fri, 13 Mar 2009 23:08:03 +0000 (23:08 +0000)]
Driver: Provide food and shelter for Action vtables.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66978 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoForce triple for a couple test cases.
Daniel Dunbar [Fri, 13 Mar 2009 22:48:51 +0000 (22:48 +0000)]
Force triple for a couple test cases.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66974 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agowire up a new -fno-builtin option, make it control things like simplifylibcalls,
Chris Lattner [Fri, 13 Mar 2009 22:38:49 +0000 (22:38 +0000)]
wire up a new -fno-builtin option, make it control things like simplifylibcalls,
etc and make freestanding imply it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66972 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoInclude component warning TableGen files in Diagnostic.td.
Ted Kremenek [Fri, 13 Mar 2009 22:19:07 +0000 (22:19 +0000)]
Include component warning TableGen files in Diagnostic.td.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66969 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoDriver: Sprinkle some consts in, stub out BuildJobs method.
Daniel Dunbar [Fri, 13 Mar 2009 22:12:33 +0000 (22:12 +0000)]
Driver: Sprinkle some consts in, stub out BuildJobs method.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66968 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoUpdate test.
Daniel Dunbar [Fri, 13 Mar 2009 22:11:42 +0000 (22:11 +0000)]
Update test.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66967 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agoadd a testcase for recursion through blocks pointers, rdar://6676764.
Chris Lattner [Fri, 13 Mar 2009 22:00:25 +0000 (22:00 +0000)]
add a testcase for recursion through blocks pointers, rdar://6676764.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66965 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agofix PR3798 by ignoring all diagnostics generated while repreprocessing a file in...
Chris Lattner [Fri, 13 Mar 2009 21:44:46 +0000 (21:44 +0000)]
fix PR3798 by ignoring all diagnostics generated while repreprocessing a file in rewrite macros.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66961 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agomake Preprocessor::Diags be a pointer instead of a reference.
Chris Lattner [Fri, 13 Mar 2009 21:17:43 +0000 (21:17 +0000)]
make Preprocessor::Diags be a pointer instead of a reference.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66955 91177308-0d34-0410-b5e6-96231b3b80d8

15 years agouse accessor instead of poking ivar directly
Chris Lattner [Fri, 13 Mar 2009 21:17:23 +0000 (21:17 +0000)]
use accessor instead of poking ivar directly

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66954 91177308-0d34-0410-b5e6-96231b3b80d8