#
80a38428 |
| 16-Jan-2014 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: bugfix for operator calls. Also fixes some formatting issues, a few testcases, and kills fish.
llvm-svn: 199436
|
#
f28bbec9 |
| 14-Jan-2014 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: add two new attributes which fine-tune the behavior of consumable objects. These are useful for implementing error codes that must be checked. Patch also includes some significan
Consumed analysis: add two new attributes which fine-tune the behavior of consumable objects. These are useful for implementing error codes that must be checked. Patch also includes some significant refactoring, which was necesary to implement the new behavior.
llvm-svn: 199169
show more ...
|
#
5553d0d4 |
| 07-Jan-2014 |
Chandler Carruth <chandlerc@gmail.com> |
Sort all the #include lines with LLVM's utils/sort_includes.py which encodes the canonical rules for LLVM's style. I noticed this had drifted quite a bit when cleaning up LLVM, so wanted to clean up
Sort all the #include lines with LLVM's utils/sort_includes.py which encodes the canonical rules for LLVM's style. I noticed this had drifted quite a bit when cleaning up LLVM, so wanted to clean up Clang as well.
llvm-svn: 198686
show more ...
|
Revision tags: llvmorg-3.4.0 |
|
#
b06f2ef3 |
| 19-Dec-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Switched code from using hasAttr followed by getAttr to simply call getAttr directly and check the resulting value. Also fixes some minor formatting issues surrounding the getAttr code.
No functiona
Switched code from using hasAttr followed by getAttr to simply call getAttr directly and check the resulting value. Also fixes some minor formatting issues surrounding the getAttr code.
No functional changes intended.
llvm-svn: 197649
show more ...
|
Revision tags: llvmorg-3.4.0-rc3 |
|
#
c6896916 |
| 17-Dec-2013 |
Richard Trieu <rtrieu@google.com> |
For -Wconsumed, walk the namespaces to find if the top most namespace is "std" to determine if a move function is the std::move function. This allows functions like std::__1::move to also be treated
For -Wconsumed, walk the namespaces to find if the top most namespace is "std" to determine if a move function is the std::move function. This allows functions like std::__1::move to also be treated a the move function.
llvm-svn: 197445
show more ...
|
#
31f3a713 |
| 16-Dec-2013 |
Richard Trieu <rtrieu@google.com> |
Fix PR18260 - Make std::move handling in -Wconsumed only trigger on std::move
llvm-svn: 197428
|
Revision tags: llvmorg-3.4.0-rc2, llvmorg-3.4.0-rc1 |
|
#
68cc3f13 |
| 16-Nov-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: track state of temporary objects. Earlier versions discarded the state too soon, and did not track state changes, e.g. when passing a temporary to a move constructor. Patch by chr
Consumed analysis: track state of temporary objects. Earlier versions discarded the state too soon, and did not track state changes, e.g. when passing a temporary to a move constructor. Patch by chris.wailes@gmail.com; review and minor fixes by delesley.
llvm-svn: 194900
show more ...
|
#
93edffa8 |
| 31-Oct-2013 |
Chris Wailes <chris.wailes@gmail.com> |
Fixed bug with checking the kind of types.
The isLValueReferenceType function checks to see if the QualType's canonical type is an LValue reference, and not if the QualType itself is an LValue refer
Fixed bug with checking the kind of types.
The isLValueReferenceType function checks to see if the QualType's canonical type is an LValue reference, and not if the QualType itself is an LValue reference. This caused a segfault when trying to cast the QualType's Type to a LValueReference. This is now fixed by casting the result of getCanonicalType().
In addition, a test was added to isConsumableType to prevent segfaults when a type being tested by the analysis is a reference to a pointer or a pointer to a reference.
llvm-svn: 193751
show more ...
|
#
9385f9f7 |
| 29-Oct-2013 |
Chris Wailes <chris.wailes@gmail.com> |
Changed tests_typestate to test_typestate for consistency.
llvm-svn: 193648
|
#
2dc8c428 |
| 25-Oct-2013 |
Chris Wailes <chris.wailes@gmail.com> |
Used OwningPtr to clean up some memory management in Consumed.cpp.
llvm-svn: 193414
|
#
44930884 |
| 24-Oct-2013 |
Chris Wailes <chris.wailes@gmail.com> |
Replaced duplicate code with calls to forwardInfo.
Also made move constructor handling safer.
llvm-svn: 193347
|
#
8121866b |
| 18-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: fix assert failure.
llvm-svn: 193010
|
#
0bd25897 |
| 18-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: assume that non-const reference parameters are initially in the "uknown" state. Patch by chris.wailes@gmail.com. Reviewed by delesley.
llvm-svn: 192995
|
#
11a66c12 |
| 18-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: All the return_typestate parameter to be attached to the default constructor. Patch by chris.wailes@gmail.com, reviewed by delesley.
llvm-svn: 192991
|
#
6939177c |
| 17-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: Add param_typestate attribute, which specifies that function parameters must be in a particular state. Patch by chris.wailes@gmail.com. Reviewed by delesley@google.com.
llvm-svn
Consumed analysis: Add param_typestate attribute, which specifies that function parameters must be in a particular state. Patch by chris.wailes@gmail.com. Reviewed by delesley@google.com.
llvm-svn: 192934
show more ...
|
#
36ea1dd4 |
| 17-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed Analysis: Allow parameters that are passed by non-const reference to be treated as return values, and marked with the "returned_typestate" attribute. Patch by chris.wailes@gmail.com; review
Consumed Analysis: Allow parameters that are passed by non-const reference to be treated as return values, and marked with the "returned_typestate" attribute. Patch by chris.wailes@gmail.com; reviewed by delesley@google.com.
llvm-svn: 192932
show more ...
|
#
6501320e |
| 17-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: fix ICE in handling of loop source locations.
llvm-svn: 192911
|
#
33a29343 |
| 11-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: replace the consumes attribute with a set_typestate attribute. Patch by chris.wailes@gmail.com; reviewed and edited by delesley.
llvm-svn: 192515
|
#
8d41d995 |
| 11-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: switch from tests_consumed/unconsumed to a general tests_typestate attribute. Patch by chris.wailes@gmail.com.
llvm-svn: 192513
|
#
fbdee4e3 |
| 11-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: check destructor calls. This allows the callable_when attribute to be attached to destructors. Original patch by chris.wailes@gmail.com, reviewed and edited by delesley.
llvm-svn:
Consumed analysis: check destructor calls. This allows the callable_when attribute to be attached to destructors. Original patch by chris.wailes@gmail.com, reviewed and edited by delesley.
llvm-svn: 192508
show more ...
|
#
3277a612 |
| 09-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed analysis: improve loop handling. The prior version of the analysis marked all variables as "unknown" at the start of a loop. The new version keeps the initial state of variables unchanged,
Consumed analysis: improve loop handling. The prior version of the analysis marked all variables as "unknown" at the start of a loop. The new version keeps the initial state of variables unchanged, but issues a warning if the state at the end of the loop is different from the state at the beginning. This patch will eventually be replaced with a more precise analysis.
Initial patch by chris.wailes@gmail.com. Reviewed and edited by delesley@google.com.
llvm-svn: 192314
show more ...
|
#
210791a0 |
| 04-Oct-2013 |
DeLesley Hutchins <delesley@google.com> |
Consumed Analysis: Change callable_when so that it can take a list of states that a function can be called in. This reduced the total number of annotations needed and makes writing more complicated
Consumed Analysis: Change callable_when so that it can take a list of states that a function can be called in. This reduced the total number of annotations needed and makes writing more complicated behaviour less burdensome. Patch by chriswails@gmail.com.
llvm-svn: 191983
show more ...
|
#
85c07d9a |
| 10-Sep-2013 |
DeLesley Hutchins <delesley@google.com> |
Fix ICE in consumed analysis when CFG is null.
llvm-svn: 190447
|
#
16f76d27 |
| 06-Sep-2013 |
David Blaikie <dblaikie@gmail.com> |
Consumed Analysis: The 'consumable' attribute now takes a identifier specifying the default assumed state for objects of this class
This information is used for return states and pass-by-value param
Consumed Analysis: The 'consumable' attribute now takes a identifier specifying the default assumed state for objects of this class
This information is used for return states and pass-by-value parameter states.
Patch by Chris Wailes.
Review by DeLesley Hutchins and Aaron Ballman.
llvm-svn: 190116
show more ...
|
#
de156243 |
| 03-Sep-2013 |
Eric Christopher <echristo@gmail.com> |
Fix non-void return warning, and format.
llvm-svn: 189845
|