Commit Graph

2331 Commits

Author SHA1 Message Date
Julian Dolby 6cb72ad2b8 fixes to make PropagationGraph and friends easier to use in dataflow problems 2018-03-02 15:29:42 -05:00
Julian Dolby e1def2ffb5 more generalization for reuse 2018-02-17 22:08:09 +01:00
Julian Dolby be6bb3dc9a a little more work on summaries 2018-02-14 18:54:21 -05:00
Julian Dolby 6c1d0d9cb6 more work for reuse
make synthetic code better support non-Java languages
2018-02-14 09:00:07 -05:00
Ben Liblit 81a6e67b4b Remove "@param" Javadoc tags for parameters that no longer exist 2018-02-10 18:08:15 -08:00
Julian Dolby c8cdaf8616 further refactoring to enable more reuse
eliminate all non-jva 8 compilation
2018-02-05 15:18:37 -08:00
Julian Dolby 0f3b6f5d7e disable debugging properly 2018-01-25 15:18:17 -05:00
Julian Dolby cd944a8f12 refactoring of CAst front end machinery to allow more reuse 2018-01-25 14:42:27 -05:00
Ben Liblit 372f0bd5d8 Fix several broken cross-references in Javadoc comments 2018-01-17 10:35:49 -08:00
Manu Sridharan 76faa4df2d
Fix bug with method lookup (#276)
The previous lookup logic would erroneously look in superclasses for a constructor with parameters.

Bug reported on [the mailing list](https://groups.google.com/forum/#!msg/wala-sourceforge-net/6m_VmDF-lZ0/erZIYQ68BwAJ;context-place=topic/wala-sourceforge-net/TjRzdDyljjY)
2017-12-23 16:38:26 -08:00
Julian Dolby a19507312a
Merge pull request #274 from ponder-lab/upstream_master2
Fix Atom.startsWith() failure case.
2017-12-20 22:45:18 +00:00
Ben Liblit 4cf2dac911 Fix missing "#" when using "@link" to refer to same-class member 2017-12-19 16:53:56 -06:00
Ben Liblit 0d6d9f2b2e Remove useless "@return" tags with no descriptive text 2017-12-19 16:53:56 -06:00
Ben Liblit 85ca6424b1 "@link" does not allow generic type parameters in method signatures 2017-12-19 16:53:56 -06:00
Ben Liblit c50dd6302f "<\tt>" is not how you close an HTML "<tt>" tag 2017-12-19 16:53:56 -06:00
Ben Liblit 4ad5322ebf Add missing right curly brace at end of "{@link ...}" 2017-12-19 16:53:55 -06:00
Ben Liblit 9072560a22 HTML lists must not have free-floating text between list items 2017-12-19 16:53:55 -06:00
Ben Liblit a7f00ffce8 "@param" parameter name must match the name of some formal parameter 2017-12-19 16:53:55 -06:00
Ben Liblit ba71f45119 "@throws" should be followed by class name and space, not comma 2017-12-19 16:53:55 -06:00
Ben Liblit ca23fc5b91 "@brief" is not a valid Javadoc tag 2017-12-19 16:53:55 -06:00
Ben Liblit d8b041469f "@returns" is not a valid Javadoc tag, but "@return" is 2017-12-19 16:53:55 -06:00
Ben Liblit ce403cef2b "@throw" is not a valid Javadoc tag, but "@throws" is 2017-12-19 16:53:55 -06:00
Ben Liblit fa62aa03e6 "<verbatim>" is not a valid HTML tag; perhaps "<pre>" was intended? 2017-12-19 16:53:55 -06:00
Ben Liblit 6beaac98bd "<bf>" is not a valid HTML tag, but "<b>" is 2017-12-19 16:53:55 -06:00
Ben Liblit f60c164ec1 Escape "<" and ">" in Javadoc when not used as HTML tag syntax 2017-12-19 16:53:52 -06:00
Raffi Khatchadourian fc62c16d9b Fix https://github.com/wala/WALA/issues/273. 2017-12-19 16:58:48 -05:00
Ben Liblit 0286c2b048 Use Iterator2Iterable helper to convert more loops to for-each 2017-12-04 14:04:39 -08:00
Ben Liblit 544a71ae72 Remove type arguments that Java 1.7+ can infer for us 2017-12-04 14:04:39 -08:00
Ben Liblit b25e461bfe Convert a few more loops into modern for-each loops 2017-12-04 14:04:39 -08:00
Julian Dolby 0ea98643f3 revert lambdas thait cause trouble with WALA Mobile. It may be that the
issue is Swing, since I think that is not on Android.
2017-12-03 11:31:29 +08:00
Ben Liblit 9c83e87cc1 Merge branch 'master' into modernization-java-8-lambdas-and-method-references 2017-11-29 10:51:33 -06:00
Ben Liblit ebfd885d22 Use modern for-each loops where possible
Java sources used as test data have been excluded from this mass
clean-up.
2017-11-28 14:44:53 -06:00
Ben Liblit 8ef6ad5069 Add proper type parameters to nearly all uses of Iterator
Java sources used as test data have been excluded.
2017-11-28 14:09:30 -06:00
Ben Liblit 2e084bdec7 Use existing IteratorUtil.filter when that's exactly what we need 2017-11-27 11:31:15 -06:00
Ben Liblit de2690dfac Remove two imports that are no longer used 2017-11-27 11:31:15 -06:00
Ben Liblit 4b81b69165 Disable annotation-based nullness analysis
Using constructor references apparently pulls in something involving
nullness annotations.  However, we don't actually build with a jar
file that defines those annotations, so this leads to Eclipse build
failures.  I don't know the right way to add such a jar file to our
current configuration mishmash of Ant, Maven, and Eclipse.  So the
easier thing to do is just disable annotation-based nullness analysis.
I doubt we were getting any benefit from such an analysis anyway,
given that WALA itself doesn't use those annotations at all.
2017-11-27 11:31:15 -06:00
Ben Liblit 74e0640771 Replace simple lambdas with method references wherever possible 2017-11-27 11:31:15 -06:00
Ben Liblit 790d37781b Convert many single-method anonymous classes to lambdas
Eclipse's automated code clean-up tool did most of the heavy lifting
here: it specifically has a clean-up option for converting functional
interfaces to lambdas.  I merely had to revert the automated changes
for a single enumeration class for which it produced invalid results,
and for a few test inputs that apparently aren't set up to be compiled
with Java 8.
2017-11-27 11:31:15 -06:00
Ben Liblit 28f0e09435 Make FilterIterator and Predicate statically type-correct
Previously FilterIterator was very permissive regarding the type
relationships between the original iterator, the filtered iterator,
and the predicate used to prune the former down to the latter.  Now we
enforce those relationships more strictly, including proper use of
covariant ("<? extends T>") and contravariant ("<? super T>")
polymorphic type parameters where appropriate.

This lets us get rid of seven suppressed warnings about generic types
and/or unchecked conversions.  It also moves us toward being able to
use modern Java features like lambdas and streams more easily.
2017-11-27 11:31:14 -06:00
Ben Liblit 9ef6ff1a9c Remove "build.xml" files not used by corresponding "pom.xml" files 2017-11-26 18:11:56 -06:00
Julian Dolby 45da66a95d cleanups and changes for TAMU work 2017-11-22 18:24:39 -05:00
Julian Dolby d124256835 remove java 7 support 2017-11-11 21:20:41 -05:00
Julian Dolby 8fc5a35c91 Merge branch 'master' of https://github.com/wala/WALA 2017-11-11 20:32:14 -05:00
Julian Dolby 8d65788aef convert to Java 8 Function and Predicate 2017-11-11 20:29:04 -05:00
Karim Ali d22ee36b09 adding some support for averroes
- adding multi-flow AnalysisOption
- enable/disable special handling of zero-length arrays

Both are required to enable precise analysis of some Dacapo benchmarks when using the Averroes-generated summaries
2017-10-23 17:43:28 -06:00
Julian Dolby 84ff23f852 expose implicit keys predicate 2017-10-19 13:09:27 -04:00
Ben Liblit 559c577093 Treat diagnostics about unchecked type operations as errors 2017-08-28 11:55:56 -07:00
Raffi Khatchadourian a49bcf5aa1 Add missing void type. 2017-08-27 11:07:22 -07:00
Ben Liblit 2d641251fb Enforce Eclipse resource leak diagnostics more strongly
In Eclipse projects that currently have no definite or potential
resource leaks, treat any such diagnostics as errors in the future.

In `com.ibm.wala.core`, enable warnings about definite or potential
resource leaks.  Previously these diagnostics were turned off entirely
in this project.  So we actually end up with more warnings now than we
had before, but they are all warnings we should eventually look into.
2017-08-27 11:03:14 -07:00
Ben Liblit eaf1c0af85 Plug a `JarFile` resource leak 2017-08-27 11:03:14 -07:00