lisa icon indicating copy to clipboard operation
lisa copied to clipboard

📚 a modular easy to use Library for Static Analysis aiming at multi-language analysis

Results 28 lisa issues
Sort by recently updated
recently updated
newest added

### Memory model To add support for pointers, we first have to reshape the memory model. Instead of having only the heap, the memory is now partitioned in heap and...

🎆 type:feature
⁉ priority:p2
🔍 scope:analysis
🏨 scope:infrastructure

**Description** Depending on the language, the scoping mechanism when a call is encountered might be different. The `LanguageFeatures` class should contain a `ScopingStrategy` that allows to customize how the analysis...

🎆 type:feature
‼ priority:p1
🔍 scope:analysis
🌍 scope:interproc

**Description** Sometimes, to explicitly invoke a method from a superclass (e.g., `super.foo()`), the receiver of the call can be set to `(Superclass) this`, that is, the current object casted to...

🐛 type:bug
‼ priority:p1
🔍 scope:analysis

**Description** As an extension and finalization of #120, we should: - swap the evaluation of sub-expressions with the outer-most one in `NaryExpression` and `NaryStatement` - provide a proper backward `interproceduralAnalysis`...

🎆 type:feature
❗ priority:p3
🔍 scope:analysis

**Description** There should be an out-of-the-box support for variadic functions. This can likely be implemented as an additional flag in the `Parameter` class, and having matching/assigning strategy take care of...

🎆 type:feature
‼ priority:p1
🌍 scope:interproc
🏛 scope:program-structure

**Description** This pull request extends the point-based analyses available in LiSA to handle pointers to primitive types, implementing the Andersen points-to analysis.

🏗 resolution:wip
❗ priority:p3
🔍 scope:analysis

**Description** Having type inference rules directly on symbolic operators makes it difficult to track what logic is being applied and requires redefinition of the operator to customize typing rules depending...

🛠 type:refactoring
‼ priority:p1
🔍 scope:analysis

**Description** LiSA should support intertwining widening and narrowing as described [here](https://www.sciencedirect.com/science/article/pii/S0167642315004165?via%3Dihub).

🎆 type:feature
❗ priority:p3
🔍 scope:analysis

**Description** Dynamic languages can modify the program structure at runtime, adding or removing fields or changing function definitions. LiSA should support this.

🎆 type:feature
🔍 scope:analysis
🏛 scope:program-structure
🏨 scope:infrastructure

**Description** The analysis now follows a fixed 3-step workflow: `syntactic checks -> program fixpoint -> semantic checks`. We should allow custom workflows to enable scenarios like `program fixpoint -> simplify...

🎆 type:feature
🛠 type:refactoring
❗ priority:p3
🏨 scope:infrastructure