]>
granicus.if.org Git - clang/log
Fariborz Jahanian [Mon, 21 Apr 2008 19:04:53 +0000 (19:04 +0000)]
Continuation of work on ObjC2's properties.
Added iterators, methods to find property and categories.
Use them in doing semantic analysis on property implementation
declarations. Fixed typos.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50050
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 21 Apr 2008 18:56:49 +0000 (18:56 +0000)]
add arm support
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50049
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 21 Apr 2008 02:02:58 +0000 (02:02 +0000)]
Clean up handling of function redeclarations
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50021
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sun, 20 Apr 2008 23:54:24 +0000 (23:54 +0000)]
Fix improper dereference of end() iterator. Patch by Argiris Kirtzidis!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50012
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sun, 20 Apr 2008 20:38:08 +0000 (20:38 +0000)]
Fix PR2236
Add test
Implement feedback from Chris re: PR1998
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50001
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Apr 2008 19:07:56 +0000 (19:07 +0000)]
Two improvements to initializer parsing:
1. If we hit a semantic error, try harder to recover to emit
diagnostics for later initializer errors (PR2241).
2. Don't leak parsed initializers on an error.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49998
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Apr 2008 18:47:55 +0000 (18:47 +0000)]
for exponent-related errors, emit the diagnostic on the 'e' or 'p'.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49997
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Apr 2008 18:41:46 +0000 (18:41 +0000)]
when emitting diagnostics about some character in a numeric
literal, indicate what character the error is about or where
it would be. For example:
pr2241.c:1:17: error: exponent has no digits
float f[] = { 1e , 1ee0 };
^
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49996
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sun, 20 Apr 2008 06:29:50 +0000 (06:29 +0000)]
Only generate code for static functions and global variables that are actually used.
Warn about unused static functions and variables.
This fixes PR1998.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49987
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Apr 2008 02:09:31 +0000 (02:09 +0000)]
Restructure and simplify Sema::ObjCQualifiedIdTypesAreCompatible,
deleting dead code, making other code more obvious, and fixing a
bug. This fixes these (bogus) warnings in release mode:
SemaExprObjC.cpp:383: warning: 'RHSProtoE' may be used uninitialized in this function
SemaExprObjC.cpp:383: warning: 'RHSProtoI' may be used uninitialized in this function
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49984
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sun, 20 Apr 2008 01:02:33 +0000 (01:02 +0000)]
html::EscapeText (using the Rewriter) now replaces tabs by default.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49982
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Apr 2008 00:50:39 +0000 (00:50 +0000)]
implement a fixme, add support for ++/-- on long double.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49980
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Apr 2008 00:45:53 +0000 (00:45 +0000)]
use simplified ConstantFP:get method.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49979
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Apr 2008 23:56:30 +0000 (23:56 +0000)]
replace form feeds with an <hr> tag.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49975
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Apr 2008 23:25:44 +0000 (23:25 +0000)]
simplify the return of InitializePreprocessor to be bool instead of a fileid
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49974
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Apr 2008 23:09:31 +0000 (23:09 +0000)]
simplify ownership of the predefines buffer.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49973
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sat, 19 Apr 2008 19:12:50 +0000 (19:12 +0000)]
Gracefully handle when the receiver of a message expression is not a pointer type.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49959
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sat, 19 Apr 2008 18:42:26 +0000 (18:42 +0000)]
Pass "-isysroot" option down to clang.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49956
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sat, 19 Apr 2008 18:07:44 +0000 (18:07 +0000)]
Fix spelling/grammar in comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49955
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Sat, 19 Apr 2008 18:05:48 +0000 (18:05 +0000)]
Use Digest::MD5 (a Perl module that should come bundled standard with Perl) to compute file digests instead of using the external program "sha1sum" (which may not be present).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49954
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 19 Apr 2008 04:17:09 +0000 (04:17 +0000)]
Generate code for annotation attributes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49951
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 18 Apr 2008 23:43:57 +0000 (23:43 +0000)]
Add support to module codegen for adding and emitting annotations
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49944
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 18 Apr 2008 23:35:14 +0000 (23:35 +0000)]
Ignore qualifiers when attempting to match arguments to parameter types for
__builtin_overload
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49943
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 18 Apr 2008 23:10:10 +0000 (23:10 +0000)]
OCUVector -> ExtVector, shorthand for extended vector, per feedback from Chris.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49942
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 22:56:53 +0000 (22:56 +0000)]
Another bug fix in emitting warnings without a path: construct a unit PathDiagnostic as we did
before. This allows the HTMLDiagnostic object to retrieve the bug type, bug description, etc.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49939
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Fri, 18 Apr 2008 22:43:39 +0000 (22:43 +0000)]
fix __attribute__(format) for struct function pointer fields
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49938
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Fri, 18 Apr 2008 22:15:15 +0000 (22:15 +0000)]
Remove bogus cast (<rdar://problem/
5874848 > clang objc-rewriter: structure with list of protocols has wrong cast).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49935
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 22:11:59 +0000 (22:11 +0000)]
Reenable using the PathDiagnosticClient for BugReports without paths.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49934
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 22:00:56 +0000 (22:00 +0000)]
Use 'clang' binary in the same dir as scan-build; if it isn't there use the one in the path
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49933
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Fri, 18 Apr 2008 21:55:08 +0000 (21:55 +0000)]
Implement FIXME discoved by <rdar://problem/
5874876 > Rewriter: Explicit ivar refs outside a method are being rewritten
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49932
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 21:53:01 +0000 (21:53 +0000)]
Turn on CF reference count checker.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49931
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Fri, 18 Apr 2008 21:13:19 +0000 (21:13 +0000)]
Fix <rdar://problem/
5874697 > Rewriter: method arguments with complex types not being rewritten properly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49925
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 20:54:29 +0000 (20:54 +0000)]
Generalize caching mechanism for bugs reports. Now individual BugTypes
can decide the policy on how to cache related bugs. This allows us to
properly to handle warning about multiple leaks in the same location in the
ref count checker (not yet done).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49918
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 20:35:30 +0000 (20:35 +0000)]
Fixed more caching bugs related to the one fixed in r49914. Silence
compiler warning introduced by a recent patch of mine.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49917
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 19:34:16 +0000 (19:34 +0000)]
Fixed elusive caching bug that led to false positives.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49914
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 19:23:43 +0000 (19:23 +0000)]
Added "GetErrorNodes()" to BugType so that -trim-egraph can recognize errors
from registered BugTypes. This helps with debugging.
Add detection of NULL values in ref count checker; this suppresses false positives.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49912
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 17:20:23 +0000 (17:20 +0000)]
Added "EvalAssume" virtual method to GRTransferFuncs; this is for evaluating
the checker-specific logic of symbolic assumptions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49910
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 18 Apr 2008 17:17:24 +0000 (17:17 +0000)]
Tabs -> spaces
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49909
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 16:58:34 +0000 (16:58 +0000)]
Spelling fix.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49908
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 16:30:14 +0000 (16:30 +0000)]
Fixed bug in GREndPathNodeBuilder: only return a node if it wasn't in the node cache.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49907
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 15:18:20 +0000 (15:18 +0000)]
scan-build now fixes permissions of report files and directories, which may
be created as "temporary files" that are not world readable.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49904
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 15:09:30 +0000 (15:09 +0000)]
Compute a digest of each report file, and nuke reports that have the same
digest as a file already added to the index. This a workaround for the
analyzer analyzing the same file more than once, which can happen when building
multiple targets.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49903
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 18 Apr 2008 05:49:49 +0000 (05:49 +0000)]
Initialize default double width and alignment
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49899
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 18 Apr 2008 05:41:31 +0000 (05:41 +0000)]
Allow targets to override double size, alignment, and semantics, and tie this
information into the IR type codegen. This allows a target to codegen the C
'double' type as either double or float.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49898
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 05:35:23 +0000 (05:35 +0000)]
Restore macro expansion for HTMLPrint by using the original Preprocessor.
This is a workaround until we figure out why a freshly create Preprocessor
doesn't expand macros from headers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49897
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 05:34:33 +0000 (05:34 +0000)]
Provide a version of html::HighlightMacros that takes a Preprocessor&.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49896
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 05:32:44 +0000 (05:32 +0000)]
More grammar fixes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49895
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 05:13:26 +0000 (05:13 +0000)]
Fix plurality debacle.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49894
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 05:01:33 +0000 (05:01 +0000)]
Fixed range highlighting bug in HTML diagnostics.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49893
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 04:55:01 +0000 (04:55 +0000)]
Added path diagnostics for reference counts.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49892
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 Apr 2008 04:54:20 +0000 (04:54 +0000)]
Make tab insertion really right: the number of spaces inserted
depends on the column number of the start of the tab.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49891
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 04:18:16 +0000 (04:18 +0000)]
Several Expr subclasses did not mark "getSourceRange()" virtual. Fixed.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49890
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 03:39:05 +0000 (03:39 +0000)]
BugReport::VisitNode now takes BugReporter& instead of ASTContext&.
Shuffled around code in CFRefCount to better pair classes with implementation,
and started adding subclasses of RangedBugReport to handle better diagnostics
for reference count bugs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49889
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 03:37:38 +0000 (03:37 +0000)]
Use HTML5 doctype when generating HTML.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49888
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 02:24:50 +0000 (02:24 +0000)]
Added null check.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49887
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 02:12:39 +0000 (02:12 +0000)]
Updated CSS colors. Patch by Cedric Venet!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49886
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 02:00:02 +0000 (02:00 +0000)]
Added test cases to test for reference count leaks.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49885
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Fri, 18 Apr 2008 01:56:37 +0000 (01:56 +0000)]
Simplified internal logic of BugReporter, consolidating EmitWarning and
EmitPathWarning into one method. We now properly handle emitting warnings
without a PathDiagnosticClient when the warning does not involve a particular
statement.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49884
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 18 Apr 2008 00:30:47 +0000 (00:30 +0000)]
Fixed a bug in categories and properties.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49883
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 18 Apr 2008 00:19:30 +0000 (00:19 +0000)]
Initial work for property implementation declarations.
Mostly semantic checking in this patch. This is on going
and incomplete.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49882
91177308 -0d34-0410-b5e6-
96231b3b80d8
Steve Naroff [Thu, 17 Apr 2008 23:51:38 +0000 (23:51 +0000)]
Update VC++ project files.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49881
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 17 Apr 2008 23:44:37 +0000 (23:44 +0000)]
Modified BugReport::getEndPath() to handle the case where end path is at
the exit block of the CFG.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49880
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 17 Apr 2008 23:43:50 +0000 (23:43 +0000)]
Hook up reporting reference count memory leaks to the BugReporter mechanism.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49879
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Apr 2008 23:03:14 +0000 (23:03 +0000)]
Fix a problem noticed by Nuno, where we wouldn't escape characters in
macro expansions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49877
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 17 Apr 2008 22:31:54 +0000 (22:31 +0000)]
class Preprocessor: Now owns the "predefines" char*; it deletes [] it in its dstor.
clang.cpp: InitializePreprocessor now makes a copy of the contents of PredefinesBuffer and
passes it to the preprocessor object.
clang.cpp: DriverPreprocessorFactory now calls "InitializePreprocessor" instead of this being done in main().
html::HighlightMacros() now takes a PreprocessorFactory, allowing it to conjure up a new
Preprocessor to highlight macros.
class HTMLDiagnostics now takes a PreprocessorFactory* that it can use for html::HighlightMacros().
Updated clients of HTMLDiagnostics to use this new interface.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49875
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Apr 2008 22:24:51 +0000 (22:24 +0000)]
Handle text escaping (e.g. & -> &) last, to avoid interactions between 'replace' operations and insert operations. This fixes a problem with "&;&" on line 666 of the gcc.c example I sent out.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49874
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 17 Apr 2008 21:38:34 +0000 (21:38 +0000)]
Generate the Preprocessor using a local PreprocessorFactory object.
While this adds no extra functionality now, we will soon pass the
PreprocessorFactory object to some ASTConsumers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49873
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Apr 2008 21:32:46 +0000 (21:32 +0000)]
don't give macros a background
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49871
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Apr 2008 21:28:41 +0000 (21:28 +0000)]
Make sure popup is on top over other spans. wrap long line.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49870
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 17 Apr 2008 21:23:07 +0000 (21:23 +0000)]
Added "PreprocessorFactory", an interface for lazily creating Preprocessor objects on-demand.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49868
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 17 Apr 2008 19:57:27 +0000 (19:57 +0000)]
Add support in HTML macro expansion for hovering over a macro and automatically
expanding its definition. This is a pure CSS solution.
Tested on IE7, Firefox 3b4, and Safari 3.1.
Patch by Cedric Venet!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49865
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 17 Apr 2008 18:39:57 +0000 (18:39 +0000)]
Temporarily disable macro expansion in the HTML output of HTMLDiagnostics to
avoid corrupting Preprocessor state. Working on a fix.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49864
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 17 Apr 2008 18:37:23 +0000 (18:37 +0000)]
HAve HTMLDiagnostics use html::HighlightRange to highlight message ranges.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49863
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Thu, 17 Apr 2008 18:25:18 +0000 (18:25 +0000)]
Added property decl support for protocols.
Added assertion if unexpected property decls are found where they don't belong.
Consolidated property decl. printing by using a helper function.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49862
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Thu, 17 Apr 2008 18:12:53 +0000 (18:12 +0000)]
Added transfer function support for ReturnStmt to support detecting leaks
involving objects that are returned but have an excessive reference count.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49861
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Thu, 17 Apr 2008 18:06:57 +0000 (18:06 +0000)]
Allow redirecting text diagnostic printer output to any llvm::OStream, rather
than hard coding llvm::cerr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49860
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Thu, 17 Apr 2008 14:47:13 +0000 (14:47 +0000)]
Use TranslationUnitDecl as DeclContext of builtin functions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49856
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Thu, 17 Apr 2008 14:40:12 +0000 (14:40 +0000)]
Addition of TranslationUnitDecl to the AST:
-Added TranslationUnitDecl class to serve as top declaration context
-ASTContext gets a TUDecl member and a getTranslationUnitDecl() function
-All ScopedDecls get the TUDecl as DeclContext when declared at global scope
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49855
91177308 -0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Thu, 17 Apr 2008 13:52:22 +0000 (13:52 +0000)]
Fix MSVC compiler error: "initialization of 'VD' is skipped by 'case' label"
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49853
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Apr 2008 00:40:45 +0000 (00:40 +0000)]
insert macro expansions into floating divs. For now, they are always displayed,
but we want some javascript or something toggle their display.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49836
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 16 Apr 2008 23:21:17 +0000 (23:21 +0000)]
correctly hilight multi-line macro definitions and other
preprocessor directives.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49828
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 16 Apr 2008 23:06:45 +0000 (23:06 +0000)]
Make HighlightRange correctly handle multi-line ranges. This causes us to
correctly handle multi-line comments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49827
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 23:05:51 +0000 (23:05 +0000)]
Handle ReturnStmts by dispatching to "EvalReturn" in the transfer function object.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49826
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 16 Apr 2008 22:45:51 +0000 (22:45 +0000)]
add a new HighlightRange API, it doesn't handle multiline ranges
yet, but it will soon...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49825
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 22:32:20 +0000 (22:32 +0000)]
CF ref. count checker: Register memory leaks at the end of a path.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49824
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 22:30:40 +0000 (22:30 +0000)]
Bug fix in GREndPathNodeBuilderImpl: Use the specified state to construct
a node, not the state of the predecessor.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49823
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 16 Apr 2008 22:00:24 +0000 (22:00 +0000)]
New AST class for property implementation declarations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49821
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 16 Apr 2008 21:11:25 +0000 (21:11 +0000)]
Fixed a comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49819
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 21:10:48 +0000 (21:10 +0000)]
Added CFGBlock::getTerminatorCondition() to get the Expr* of the condition a block's terminator.
Refactored LiveVariables to use getTerminatorCondition() in VisitTerminator().
Bug fix: CFG now computes Block-level expression numbers using information
from block terminators. This fixes <rdar://problem/
5868189 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49818
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Wed, 16 Apr 2008 21:08:45 +0000 (21:08 +0000)]
This patch adds support for declaraing properties in categories,
just as they are declared in objc classes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49817
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 16 Apr 2008 20:54:51 +0000 (20:54 +0000)]
reenable highlighting of (the first line of) comments
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49816
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 16 Apr 2008 20:51:51 +0000 (20:51 +0000)]
switch from relexing with the preprocessor to do syntax highlighting to relexing
with the Lexer. This is cheaper and gives us some advantages. For now we start
highlighting preprocessor directives (which need improvement), and disable
comments. Comments to be restored later.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49815
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 20:41:27 +0000 (20:41 +0000)]
Add extra test cases to test "escaping" for the reference count checker.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49812
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 20:40:59 +0000 (20:40 +0000)]
Small tweaks to EvalStore: pass an "RVal" instead of "LVal" for the TargetLV to
represent possible stores to "Unknown."
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49811
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 18:39:47 +0000 (18:39 +0000)]
Update XCode project (added GRTransferFuncs.cpp).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49806
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 18:39:25 +0000 (18:39 +0000)]
Add missing file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49805
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 18:39:06 +0000 (18:39 +0000)]
Hook up "EvalStore" from GRTransferFuncs to GRExprEngine.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49804
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 18:21:25 +0000 (18:21 +0000)]
Take first step to migrating handling of "stores" to values from GRExprEngine
to the plug-in GRTransferFuncs object.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49801
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 17:07:59 +0000 (17:07 +0000)]
LiveVariables now updates the liveness state of block-level expressions that
are referenced by CFGBlock terminators.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49798
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Wed, 16 Apr 2008 16:53:18 +0000 (16:53 +0000)]
Added fixme.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49797
91177308 -0d34-0410-b5e6-
96231b3b80d8