Граф коммитов

19287 Коммитов

Автор SHA1 Сообщение Дата
Ted Kremenek 22ba05e018 Fix grammar.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95719 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 23:18:00 +00:00
Ted Kremenek e28897ad57 Change text alignment in menus.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95718 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 23:16:24 +00:00
Ted Kremenek 90fc45fb1d Move file-specific styling to after the menu.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95717 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 23:10:47 +00:00
Ted Kremenek fe775388fd Invert css inclusion order.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95716 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 23:09:48 +00:00
Ted Kremenek 8bebc6e301 More analyzer website tweaking in preparation for additional content.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95714 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 23:05:59 +00:00
Douglas Gregor 89cc9d6e2a Complain about types and declarations that we don't know how to import.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95706 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 22:48:33 +00:00
Douglas Gregor e07c5b06c4 Add in the LIT magic to avoid running AST merge test inputs as
separate tests. Thanks, Daniel!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95705 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 22:40:03 +00:00
Douglas Gregor d343ff623e Hook up the diagnostics-argument printer when merging AST files, so
that we get readable diagnostics such as:

error: external variable 'x1' declared with incompatible types in
different translation units ('double *' vs. 'float **')

However, there is no translation of source locations, yet.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95704 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 22:37:58 +00:00
Douglas Gregor 79a9a34179 Move the diagnostic argument formatting function out of Sema and make
it available within the AST library, of which Sema is one client. No
functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95701 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 22:26:47 +00:00
Ted Kremenek 41e9066e3f Fix javascript link.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95696 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 21:49:53 +00:00
Fariborz Jahanian 77e2dde750 Finish implementing property synthesis by default.
(radar 7381956).



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95695 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 21:49:50 +00:00
Ted Kremenek b9576d9623 Fix javascript file link.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95694 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 21:48:04 +00:00
Ted Kremenek aede4121e5 Update checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95692 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 21:42:12 +00:00
Fariborz Jahanian 412e798941 Implement synthesizing properties by default.
This is a non-fragile-abi feature only. Since it
breaks existing code, it is currently placed under
-fobjc-nonfragile-abi2 option for test purposes only
until further notice. WIP.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95685 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 19:31:38 +00:00
Benjamin Kramer 74a8bbf065 StringRefize two random methods, remove a dead variable and a weird constructor call.
This maybe fixes some of the errors GCC 4.5 gives on this code.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95684 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 19:31:24 +00:00
Douglas Gregor 9bed879896 Introduce a testbed for merging multiple ASTs into a single AST
context with the AST importer. WIP, still useless but at least it has
a test.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95683 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 19:21:46 +00:00
Ted Kremenek 8ec4aac6d3 Fix lookup of fields from lazy bindings to check if the region is
NULL, not the store, to determine if a lookup succeeded.  The store
can be null if it contained no bindings.  This fixes a false positive
reported to me by a user of the analyzer.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95679 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 19:11:53 +00:00
Devang Patel d5322da6ba Fix virtual bases' debug info.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95678 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 19:09:28 +00:00
Ted Kremenek 8d69937281 Tweak output.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95676 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 18:51:44 +00:00
Ted Kremenek 962da0baff Add a check for a running Xcode before modifying its configuration files.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95675 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 18:46:58 +00:00
Devang Patel 337472dcb7 Mark implicit "this" argument as an artificial argument.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95673 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 17:57:50 +00:00
Anton Korobeynikov 555d04f615 Fix typo
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95664 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 16:50:54 +00:00
Anton Korobeynikov 0488124fb9 Clearify Qt status a bit
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95663 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 16:46:25 +00:00
Douglas Gregor 95e636cd19 Add Qt, CMake projects to the list of C++ projects we're working on compiling
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95662 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 16:36:17 +00:00
Daniel Dunbar e5712b1341 Update tests in -Asserts mode. These tests really need to be rewritten...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95658 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 08:22:03 +00:00
Douglas Gregor 60c93c9981 Migrate the mish-mash of declaration checks in
Sema::ActOnUninitializedDecl over to InitializationSequence (with
default initialization), eliminating redundancy. More importantly, we
now check that a const definition in C++ has an initilizer, which was
an #if 0'd code for many, many months. A few other tweaks were needed
to get everything working again:

  - Fix all of the places in the testsuite where we defined const
    objects without initializers (now that we diagnose this issue)
  - Teach instantiation of static data members to find the previous
    declaration, so that we build proper redeclaration
    chains. Previously, we had the redeclaration chain but built it
    too late to be useful, because...
  - Teach instantiation of static data member definitions not to try
    to check an initializer if a previous declaration already had an
    initializer. This makes sure that we don't complain about static
    const data members with in-class initializers and out-of-line
    definitions.
  - Move all of the incomplete-type checking logic out of
    Sema::FinalizeDeclaratorGroup; it makes more sense in
    ActOnUnitializedDecl.

There may still be a few places where we can improve these
diagnostics. I'll address that as a separate commit.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95657 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 07:26:29 +00:00
Daniel Dunbar 195337d2e5 IRgen: Add CreateMemTemp, for creating an temporary memory object for a particular type, and flood fill. - CreateMemTemp sets the alignment on the alloca correctly, which fixes a great many places in IRgen where we were doing the wrong thing.
- This fixes many many more places than the test case, but my feeling is we need to audit alignment systematically so I'm not inclined to try hard to test the individual fixes in this patch. If this bothers you, patches welcome!

PR6240.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95648 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 02:48:28 +00:00
Douglas Gregor e180ed2f01 Fix PR number in test case
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95640 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 01:02:53 +00:00
John McCall ed814cc4cd Reset the found-virtual-base state unless the *current* base produces a path,
not *any* base up to now has produced a path.  Fixes PR 6254.

I'll do the access-control part of this patch RSN.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95638 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 00:57:12 +00:00
Douglas Gregor 2c79281ef6 Be more careful when checking initializer lists that involve reference
types; we don't want to give an expression reference type. Fixes PR6177.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95635 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 00:50:06 +00:00
Douglas Gregor de09096a9e Implement a specific diagnostic when a class template partial
specialization does not use any of its template parameters, then
recover far more gracefully. Fixes PR6181.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95629 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 00:37:32 +00:00
Jakob Stoklund Olesen a3fe2842e0 Pass inline keyword to optimizer as the new InlineHint function attribute.
At the moment the inlinehint attribute is ignored by the Inliner unless you
pass a -respect-inlinehint option.  This will soon be the default.

The inlinehint attribute is set if the inline keyword is explicitly specified
on any declaration.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95623 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 00:10:00 +00:00
Ted Kremenek df17f9d95b Convert tabs to spaces.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95621 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09 00:04:09 +00:00
Ted Kremenek c6b7003fb4 Fix grammar.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95618 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 23:57:20 +00:00
Ted Kremenek 1b43ec269b Tweak menu.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95617 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 23:56:51 +00:00
Ted Kremenek 3a7ae8f115 Really increase menu width...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95615 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 23:55:36 +00:00
Ted Kremenek 61158c5006 Increase width of nav bar.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95612 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 23:54:46 +00:00
Ted Kremenek 0d8dc1e398 Add inclusion links for external JavaScript file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95611 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 23:52:41 +00:00
Ted Kremenek 5a9bd11693 Switch to drop-down menu style.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95610 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 23:50:54 +00:00
Douglas Gregor dcee98048d When substituting a declaration non-type template argument for a
non-type template parameter that has reference type, augment the
qualifiers of the non-type template argument with those of the
referenced type. Fixes PR6250.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95607 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 23:41:45 +00:00
Douglas Gregor a3890baf12 Clean up the CIndex interface to diagnostic ranges. Thanks, Daniel!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95602 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 23:11:56 +00:00
John McCall 5769d61950 Thread a source location into the template-argument deduction routines. There
may be some other places that could take advantage of this new information,
but I haven't really looked yet.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95600 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 23:07:23 +00:00
Douglas Gregor 0087e1a12b Note that a CXIndex cannot be destroyed until after all of its translation units have been destroyed
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95598 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 23:03:06 +00:00
Douglas Gregor fd6a0887a0 Eliminate a pointer of storage in each ObjCInterfaceType and
ObjCObjectPointerType AST node by allocating the list of protocols
after the type node itself. No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95597 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 22:59:26 +00:00
Daniel Dunbar e86bcf0d9e Reapply r95393, without the change to CGExpr. I was wrong in assuming that the
element type always matched the converted LLVM type for ExprType.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95596 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 22:53:07 +00:00
Douglas Gregor ba915af51c Warn when cases are missing from a switch on a value of enumeration
type (-Wswitch), from Michal! 


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95592 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 22:24:16 +00:00
Ted Kremenek 7dc94d6892 Remove table (for now). Doesn't look so hot.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95590 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 22:16:08 +00:00
Ted Kremenek 51667ee4bf Add images showing the results in a web browser and Xcode respectively.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95589 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 22:12:48 +00:00
Douglas Gregor 591bd3cb60 Keep track of whether a tag was defined in a declarator vs. being
defined by itself, from Enea Zaffanella!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95586 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 22:07:33 +00:00
John McCall 8878686242 Emit global references with constant initializers as constants. Fixes PR5585.
The standard actually says that such references should have internal linkage,
but gcc doesn't do that, so we probably can't get away with it.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95577 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-08 21:46:50 +00:00