Verified Commit efacbde6 authored by Carlos Galindo's avatar Carlos Galindo
Browse files

Fix MethodCallReplacerVisitor: throw statements were not considered

parent a1dc71e1
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@
        <dependency>
            <groupId>tfm</groupId>
            <artifactId>sdg-core</artifactId>
            <version>1.1.0</version>
            <version>1.1.1</version>
            <scope>compile</scope>
        </dependency>
    </dependencies>
+1 −1
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@

    <groupId>tfm</groupId>
    <artifactId>sdg-core</artifactId>
    <version>1.1.0</version>
    <version>1.1.1</version>

    <properties>
        <maven.compiler.source>11</maven.compiler.source>
+1 −0
Original line number Diff line number Diff line
@@ -230,6 +230,7 @@ public class ESCFG extends ACFG {
        public void visit(ThrowStmt n, Void arg) {
            stmtStack.push(n);
            GraphNode<ThrowStmt> stmt = connectTo(n);
            n.getExpression().accept(this, arg);
            stmt.addDefinedVariable(new NameExpr(ACTIVE_EXCEPTION_VARIABLE));
            populateExceptionSourceMap(new ExceptionSource(stmt, n.getExpression().calculateResolvedType()));
            clearHanging();
+7 −0
Original line number Diff line number Diff line
@@ -32,6 +32,13 @@ public class MethodCallReplacerVisitor extends VoidVisitorAdapter<Context> {
        this.sdg = sdg;
    }

    @Override
    public void visit(ThrowStmt n, Context arg) {
        stmtStack.push(sdg.findNodeByASTNode(n).orElseThrow());
        super.visit(n, arg);
        stmtStack.pop();
    }

    @Override
    public void visit(DoStmt n, Context arg) {
        stmtStack.push(sdg.findNodeByASTNode(n).orElseThrow());