Comments (5)
@jvcoutinho it seems like we lost the filter that tries to match only elements of the same type. is that right @jvcoutinho?
from jfstmerge.
@jvcoutinho it seems like we lost the filter that tries to match only elements of the same type. is that right @jvcoutinho?
superimposition is matching properly (same name, same type), this is a issue only for the handler.
from jfstmerge.
That's weird, it's never happened to me. There are actually some filters in later steps, for example:
https://github.com/guilhermejccavalcanti/jFSTMerge/blob/b0f553b03e1c9eb6eb345af0754bf0526c81c860/src/main/java/br/ufpe/cin/mergers/handlers/MethodAndConstructorRenamingAndDeletionHandler.java#L178-L186
But this only constrains terminals to match methods, so I agree with you we could increase the robustness.
But since this method is the same as the one in #134, I suppose the problem is the same: the body ";" was marked as substring of the import statement's body. If it's body was empty (as it should be), this shouldn't be a problem.
from jfstmerge.
@jvcoutinho where should we add the check for trying to match only elements of the same type?
your second comment reinforces the need for improving the substring matching algorithm, right?
from jfstmerge.
That's weird, it's never happened to me. There are actually some filters in later steps, for example:
But this only constrains terminals to match methods, so I agree with you we could increase the robustness.
But since this method is the same as the one in #134, I suppose the problem is the same: the body ";" was marked as substring of the import statement's body. If it's body was empty (as it should be), this shouldn't be a problem.
@jvcoutinho the filter you mentioned only checks the left and right trees, as you can see below(the import came from the base, which is not filtered):
from jfstmerge.
Related Issues (20)
- Replace REGEX on Initialization Blocks Handler to check var declarations
- IOException when attempting to create log
- general renaming handler should not be configurable and should not invoke renaming strategies
- --ignore-space-change flag for all situations HOT 3
- "getMostAccurateMatchForNonAbstractMethods" method returning innapropiate results HOT 2
- duplicated commas when merging enums
- Log and statistics files not updating after every execution
- Parameter to enable/disable unstructured merge output
- Trocar Travis CI por GitHub Actions
- Investigar e corrigir erro de build no Travis CI
- Consider left, base and right trees at the same time when superimposing instead of merging trees in pairs.
- Regression Tests instead of shelltests
- Initialization Blocks Multiple Handler (-hibmb/--handle-initialization-blocks-multiple-blocks) is not present in the S3m.jar HOT 3
- MINE conflict marker not in its own line
- `NullPointerException` at renaming handler
- Duplicated Prefix
- TypeAmbiguityError Handler should report a conflict in a few situations in which import package is replaced by import of individual members
- s3m reporting inconsistent number of conflicts and renaming conflicts
- s3m reporting wrong results when merging initialization blocks from different innerclasses
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jfstmerge.