This commit is contained in:
Julian Dolby 2017-04-24 16:28:34 -04:00
commit fe636f4b97
83 changed files with 237 additions and 115 deletions

View File

@ -2,7 +2,7 @@
<feature
id="com.ibm.wala-feature"
label="%featureName"
version="1.4.2.qualifier"
version="1.4.3.qualifier"
provider-name="%providerName">
<plugin

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala-feature</artifactId>
<packaging>eclipse-feature</packaging>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala-repository</artifactId>
<packaging>eclipse-repository</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: WALA CAst Java ECJ frontend
Bundle-SymbolicName: com.ibm.wala.cast.java.ecj
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: IBM
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Require-Bundle: com.ibm.wala.cast.java,

View File

@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast.java.ecj</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
<packaging>jar</packaging>
<name>WALA CAst Java ECJ</name>
<description>WALA Common AST Java ECJ front-end</description>
@ -45,22 +45,22 @@
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast.java</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.core</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.shrike</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.eclipse.core</groupId>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast.java.ecj</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,6 +2,6 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Data Plug-in
Bundle-SymbolicName: com.ibm.wala.cast.java.test.data
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: IBM
Bundle-RequiredExecutionEnvironment: JavaSE-1.7

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast.java.test.data</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Java AST WALA Test Plug-in
Bundle-SymbolicName: com.ibm.wala.cast.java.test
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Activator: com.ibm.wala.cast.java.test.TestPlugin
Bundle-Vendor: IBM
Require-Bundle: com.ibm.wala.core.tests,

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast.java.test</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Java Source WALA Front End
Bundle-SymbolicName: com.ibm.wala.cast.java
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: rfuhrer@watson.ibm.com
Require-Bundle: com.ibm.wala.cast,
com.ibm.wala.core,

View File

@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast.java</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
<packaging>jar</packaging>
<name>WALA CAst</name>
<description>WALA Common AST core Java front-end functionality</description>
@ -45,17 +45,17 @@
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.core</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.shrike</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
</dependencies>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast.java</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nu_validator
Bundle-SymbolicName: com.ibm.wala.cast.js.html.nu_validator
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Export-Package: com.ibm.wala.cast.js.html.nu_validator
Require-Bundle: com.ibm.wala.cast.js;bundle-version="1.0.0",
com.ibm.wala.cast.js.rhino.test;bundle-version="1.0.0",

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast.js.html.nu_validator</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Test
Bundle-SymbolicName: com.ibm.wala.cast.js.nodejs.test
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Export-Package: NodejsRequireJsonTest,
NodejsRequireTargetSelectorResolve,
NodejsRequireTargetSelectorResolve.requireDynamic,

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast.js.nodejs.test</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nodejs
Bundle-SymbolicName: com.ibm.wala.cast.js.nodejs
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Export-Package: com.ibm.wala.cast.js.nodejs
Require-Bundle: com.ibm.wala.cast.js;bundle-version="1.3.10",
com.ibm.wala.cast.js.rhino;bundle-version="1.3.10"

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<packaging>eclipse-plugin</packaging>
<artifactId>com.ibm.wala.cast.js.nodejs</artifactId>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Test Plug-in
Bundle-SymbolicName: com.ibm.wala.cast.js.rhino.test
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: IBM
Require-Bundle: com.ibm.wala.cast.js.rhino;bundle-version="1.0.0",
com.ibm.wala.cast.js;bundle-version="1.0.0",

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast.js.rhino.test</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Rhino Plug-in
Bundle-SymbolicName: com.ibm.wala.cast.js.rhino
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: IBM
Require-Bundle: com.ibm.wala.cast;bundle-version="1.0.0",
com.ibm.wala.cast.js;bundle-version="1.0.0",

View File

@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast.js.rhino</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
<packaging>jar</packaging>
<name>WALA CAst JS Rhino</name>
<description>WALA JS Rhino adapter</description>
@ -45,17 +45,17 @@
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.core</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast.js</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.mozilla</groupId>

View File

@ -6,7 +6,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast.js.rhino</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2
Eclipse-LazyStart: true
Bundle-Name: %pluginName
Bundle-SymbolicName: com.ibm.wala.cast.js.test.data;singleton:=true
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: examples-src/

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast.js.test.data</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: WALA JavaScript Test Plug-in
Bundle-SymbolicName: com.ibm.wala.cast.js.test
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: IBM
Require-Bundle: com.ibm.wala.cast.js,
com.ibm.wala.cast,

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast.js.test</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: JavaScript Plug-in
Bundle-SymbolicName: com.ibm.wala.cast.js;singleton:=true
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-ClassPath: .,
lib/jericho-html-3.2.jar
Bundle-Vendor: IBM

View File

@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast.js</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
<packaging>jar</packaging>
<name>WALA CAst JS</name>
<description>WALA JS frontend</description>
@ -45,17 +45,17 @@
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.core</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.shrike</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>net.htmlparser.jericho</groupId>
@ -66,7 +66,7 @@
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
</dependency>
</dependencies>
<repositories>
@ -74,7 +74,7 @@
<id>sonatype-snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</repository>
</repositories>
</repositories>
<profiles>
<profile>
@ -96,9 +96,14 @@
</properties>
</profile>
</profiles>
<build>
<sourceDirectory>${src.dir}</sourceDirectory>
<resources>
<resource>
<directory>dat</directory>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
@ -140,7 +145,7 @@
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<additionalparam>${javadoc.options}</additionalparam>
</configuration>
</configuration>
<version>2.9.1</version>
<executions>
<execution>
@ -166,7 +171,7 @@
</execution>
</executions>
</plugin>
</plugins>
</build>
</build>
</project>

View File

@ -6,7 +6,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast.js</artifactId>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: CAst Test Plug-in
Bundle-SymbolicName: com.ibm.wala.cast.test
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: IBM
Require-Bundle:
org.junit;bundle-version="4.0.0",

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast.test</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: WALA CAst core Plug-in
Bundle-SymbolicName: com.ibm.wala.cast
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: IBM
Require-Bundle: com.ibm.wala.core,
com.ibm.wala.shrike

View File

@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
<packaging>jar</packaging>
<name>WALA CAst</name>
<description>WALA Common AST core library</description>
@ -45,12 +45,12 @@
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.core</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.shrike</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.cast</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Testdata Plug-in
Bundle-SymbolicName: com.ibm.wala.core.testdata
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: IBM
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Eclipse-BuddyPolicy: registered

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<packaging>eclipse-plugin</packaging>
<artifactId>com.ibm.wala.core.testdata</artifactId>

View File

@ -0,0 +1,28 @@
/*******************************************************************************
* Copyright (c) 2008 IBM Corporation.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package slice;
import java.util.Random;
public class Slice9 {
public static void main(String[] args) {
Random r = null;
r = new Random();
int i = 42;
i = r.nextInt();
int j;
j = 42*i;
doNothing(j);
}
static void doNothing(int x) {}
}

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: com.ibm.wala.core.tests;singleton:=true
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: %providerName
Require-Bundle: com.ibm.wala.shrike,
com.ibm.wala.core,

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.core.tests</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -10,6 +10,7 @@
*******************************************************************************/
package com.ibm.wala.core.tests.slicer;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
@ -66,6 +67,8 @@ import com.ibm.wala.ssa.SSAPutInstruction;
import com.ibm.wala.types.ClassLoaderReference;
import com.ibm.wala.types.Descriptor;
import com.ibm.wala.util.CancelException;
import com.ibm.wala.util.config.AnalysisScopeReader;
import com.ibm.wala.util.config.FileOfClasses;
import com.ibm.wala.util.debug.Assertions;
import com.ibm.wala.util.graph.GraphIntegrity;
import com.ibm.wala.util.graph.GraphIntegrity.UnsoundGraphException;
@ -76,9 +79,27 @@ public class SlicerTest {
private static AnalysisScope cachedScope;
// more aggressive exclusions to avoid library blowup
// in interprocedural tests
private static final String EXCLUSIONS = "java\\/awt\\/.*\n" +
"javax\\/swing\\/.*\n" +
"sun\\/awt\\/.*\n" +
"sun\\/swing\\/.*\n" +
"com\\/sun\\/.*\n" +
"sun\\/.*\n" +
"org\\/netbeans\\/.*\n" +
"org\\/openide\\/.*\n" +
"com\\/ibm\\/crypto\\/.*\n" +
"com\\/ibm\\/security\\/.*\n" +
"org\\/apache\\/xerces\\/.*\n" +
"java\\/security\\/.*\n" +
"";
private static AnalysisScope findOrCreateAnalysisScope() throws IOException {
if (cachedScope == null) {
cachedScope = CallGraphTestUtil.makeJ2SEAnalysisScope(TestConstants.WALA_TESTDATA, "Java60RegressionExclusions.txt");
cachedScope = AnalysisScopeReader.readJavaScope(TestConstants.WALA_TESTDATA, null, SlicerTest.class.getClassLoader());
cachedScope.setExclusions(new FileOfClasses(new ByteArrayInputStream(EXCLUSIONS.getBytes("UTF-8"))));
}
return cachedScope;
}
@ -270,7 +291,7 @@ public class SlicerTest {
TestConstants.SLICE8_MAIN);
AnalysisOptions options = CallGraphTestUtil.makeAnalysisOptions(scope, entrypoints);
CallGraphBuilder builder = Util.makeZeroOneCFABuilder(options, new AnalysisCacheImpl(), cha, scope);
CallGraphBuilder<InstanceKey> builder = Util.makeZeroOneCFABuilder(options, new AnalysisCacheImpl(), cha, scope);
CallGraph cg = builder.makeCallGraph(options, null);
CGNode process = findMethod(cg, Descriptor.findOrCreateUTF8("()V"), Atom.findOrCreateUnicodeAtom("process"));
@ -287,6 +308,29 @@ public class SlicerTest {
ControlDependenceOptions.NONE);
Assert.assertEquals(slice.toString(), 4, slice.size());
}
@Test
public void testSlice9() throws ClassHierarchyException, IllegalArgumentException, CancelException, IOException {
AnalysisScope scope = findOrCreateAnalysisScope();
IClassHierarchy cha = findOrCreateCHA(scope);
Iterable<Entrypoint> entrypoints = com.ibm.wala.ipa.callgraph.impl.Util.makeMainEntrypoints(scope, cha,
TestConstants.SLICE9_MAIN);
AnalysisOptions options = CallGraphTestUtil.makeAnalysisOptions(scope, entrypoints);
CallGraphBuilder<InstanceKey> builder = Util.makeZeroOneCFABuilder(options, new AnalysisCacheImpl(), cha, scope);
CallGraph cg = builder.makeCallGraph(options, null);
CGNode main = findMainMethod(cg);
Statement s = findCallToDoNothing(main);
System.err.println("Statement: " + s);
// compute a backward slice, with data dependence and no exceptional control dependence
final PointerAnalysis<InstanceKey> pointerAnalysis = builder.getPointerAnalysis();
Collection<Statement> slice = Slicer.computeBackwardSlice(s, cg, pointerAnalysis, InstanceKey.class, DataDependenceOptions.FULL,
ControlDependenceOptions.NO_EXCEPTIONAL_EDGES);
//dumpSlice(slice);
Assert.assertEquals(/*slice.toString(), */5, countApplicationNormals(slice));
}
@Test
public void testTestCD1() throws ClassHierarchyException, IllegalArgumentException, CancelException, IOException {
@ -850,6 +894,18 @@ public class SlicerTest {
return count;
}
public static int countApplicationNormals(Collection<Statement> slice) {
int count = 0;
for (Statement s : slice) {
if (s.getKind().equals(Statement.Kind.NORMAL)) {
AnalysisScope scope = s.getNode().getClassHierarchy().getScope();
if (scope.isApplicationLoader(s.getNode().getMethod().getDeclaringClass().getClassLoader())) {
count++;
}
}
}
return count;
}
public static int countConditionals(Collection<Statement> slice) {
int count = 0;
for (Statement s : slice) {

View File

@ -104,6 +104,7 @@ public interface TestConstants {
public final static String SLICE8_MAIN = "Lslice/Slice8";
public final static String SLICE9_MAIN = "Lslice/Slice9";
public final static String SLICE_TESTCD1 = "Lslice/TestCD1";

View File

@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2
Eclipse-LazyStart: true
Bundle-Name: %pluginName
Bundle-SymbolicName: com.ibm.wala.core
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: %providerName
Bundle-Localization: plugin
Require-Bundle: com.ibm.wala.shrike,

View File

@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.core</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
<packaging>jar</packaging>
<name>WALA Core</name>
<description>Core WALA analysis libraries</description>
@ -45,12 +45,12 @@
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.util</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.shrike</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
</dependencies>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.core</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -127,12 +127,15 @@ public class Annotation {
return sb.toString();
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + Arrays.hashCode(unnamedArguments);
result = prime * result + ((namedArguments == null) ? 0 : namedArguments.hashCode());
result = prime * result + ((type == null) ? 0 : type.hashCode());
result = prime * result + Arrays.hashCode(unnamedArguments);
return result;
}
@ -145,13 +148,18 @@ public class Annotation {
if (getClass() != obj.getClass())
return false;
Annotation other = (Annotation) obj;
if (!Arrays.equals(unnamedArguments, other.unnamedArguments))
if (namedArguments == null) {
if (other.namedArguments != null)
return false;
} else if (!namedArguments.equals(other.namedArguments))
return false;
if (type == null) {
if (other.type != null)
return false;
} else if (!type.equals(other.type))
return false;
if (!Arrays.equals(unnamedArguments, other.unnamedArguments))
return false;
return true;
}

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: WalaDalvikBytecodeTests
Bundle-SymbolicName: com.ibm.wala.dalvik.test
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Activator: com.ibm.wala.dalvik.test.Activator
Bundle-Vendor: IBM
Require-Bundle: org.eclipse.core.runtime,

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.dalvik.test</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: WALA Dalvik Bytecode Frontend
Bundle-SymbolicName: com.ibm.wala.dalvik
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Require-Bundle: com.ibm.wala.core;bundle-version="1.1.3",
com.ibm.wala.shrike;bundle-version="1.3.1",
com.ibm.wala.cast;bundle-version="1.0.0"

View File

@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.dalvik</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
<packaging>jar</packaging>
<name>WALA Dalvik</name>
<description>WALA Dalvik frontend</description>
@ -45,17 +45,17 @@
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.core</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.cast</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.shrike</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>

View File

@ -6,7 +6,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.dalvik</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@
<feature
id="com.ibm.wala.ide-feature"
label="%featureName"
version="1.4.2.qualifier"
version="1.4.3.qualifier"
provider-name="%providerName">
<plugin

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.ide-feature</artifactId>
<packaging>eclipse-feature</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: WALA CAst Java JDT Test Plug-in
Bundle-SymbolicName: com.ibm.wala.ide.jdt.test
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Activator: com.ibm.wala.cast.java.jdt.test.Activator
Bundle-Vendor: IBM
Require-Bundle: com.ibm.wala.cast.java.test;bundle-version="1.0.0",

View File

@ -6,7 +6,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: WALA IDE JDT components
Bundle-SymbolicName: com.ibm.wala.ide.jdt
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Activator: com.ibm.wala.ide.jdt.Activator
Bundle-Vendor: IBM
Require-Bundle: org.eclipse.ui,

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.ide.jdt</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: JSDT Tests
Bundle-SymbolicName: com.ibm.wala.ide.jsdt.tests;singleton:=true
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Require-Bundle: com.ibm.wala.core;bundle-version="1.1.3",
com.ibm.wala.cast;bundle-version="1.0.0",
com.ibm.wala.cast.js;bundle-version="1.0.0",

View File

@ -6,7 +6,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.ide.jsdt.tests</artifactId>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Jsdt
Bundle-SymbolicName: com.ibm.wala.ide.jsdt
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Activator: com.ibm.wala.ide.jsdt.Activator
Bundle-Vendor: IBM
Require-Bundle: org.eclipse.core.runtime,

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.ide.jsdt</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: com.ibm.wala.ide.tests;singleton:=true
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: %providerName
Require-Bundle: com.ibm.wala.shrike,
com.ibm.wala.core,

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.ide.tests</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2
Eclipse-LazyStart: true
Bundle-Name: %pluginName
Bundle-SymbolicName: com.ibm.wala.ide
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Activator: com.ibm.wala.ide.plugin.CorePlugin
Bundle-Vendor: %providerName
Bundle-Localization: plugin

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.ide</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: SCanDroid
Bundle-SymbolicName: com.ibm.wala.scandroid
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Activator: com.ibm.wala.scandroid.Activator
Bundle-Vendor: IBM
Require-Bundle: com.ibm.wala.dalvik;bundle-version="1.3.4",

View File

@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.scandroid</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
<packaging>jar</packaging>
<name>WALA Scandroid</name>
<description>WALA Scandroid taint analysis</description>
@ -45,17 +45,17 @@
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.core</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.shrike</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.dalvik</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
</dependencies>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.scandroid</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: com.ibm.wala.shrike
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-Localization: plugin

View File

@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.shrike</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
<packaging>jar</packaging>
<name>WALA Shrike</name>
<description>WALA Shrike library for bytecode reading and instrumentation</description>
@ -45,7 +45,7 @@
<dependency>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.util</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</dependency>
</dependencies>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.shrike</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -100,6 +100,30 @@ public class AnnotationsReader extends AttributeReader {
return String.valueOf(val);
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((val == null) ? 0 : val.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
ConstantElementValue other = (ConstantElementValue) obj;
if (val == null) {
if (other.val != null)
return false;
} else if (!val.equals(other.val))
return false;
return true;
}
}
/**

View File

@ -2,7 +2,7 @@
<feature
id="com.ibm.wala.tests-feature"
label="%featureName"
version="1.4.2.qualifier"
version="1.4.3.qualifier"
provider-name="%providerName">
<plugin

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.tests-feature</artifactId>
<packaging>eclipse-feature</packaging>

View File

@ -2,7 +2,7 @@
<feature
id="com.ibm.wala.tests.ide"
label="%featureName"
version="1.4.2.qualifier"
version="1.4.3.qualifier"
provider-name="%providerName">
<plugin

View File

@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: WALA Util
Bundle-SymbolicName: com.ibm.wala.util
Bundle-Version: 1.4.2.qualifier
Bundle-Version: 1.4.3.qualifier
Export-Package: com.ibm.wala.dataflow.graph,
com.ibm.wala.fixedpoint.impl,
com.ibm.wala.fixpoint,

View File

@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.ibm.wala</groupId>
<artifactId>com.ibm.wala.util</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
<packaging>jar</packaging>
<name>WALA utilities</name>
<description>Utility library included with the T. J. Watson

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>WALA</artifactId>
<groupId>com.ibm.wala</groupId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>com.ibm.wala.util</artifactId>
<packaging>eclipse-plugin</packaging>

View File

@ -5,10 +5,10 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
<project-version>1.4.2-SNAPSHOT</project-version>
<project-version>1.4.3-SNAPSHOT</project-version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<build-alias>b000</build-alias>
<tycho-version>0.23.1</tycho-version>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala.target</groupId>
<artifactId>targets</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>e42</artifactId>
<packaging>eclipse-target-definition</packaging>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala.target</groupId>
<artifactId>targets</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<artifactId>e44</artifactId>
<packaging>eclipse-target-definition</packaging>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.ibm.wala</groupId>
<artifactId>WALA</artifactId>
<version>1.4.2-SNAPSHOT</version>
<version>1.4.3-SNAPSHOT</version>
</parent>
<groupId>com.ibm.wala.target</groupId>
<artifactId>targets</artifactId>