class T
If one renames T to TT the error following error message appears in the editor:
constructor TT is defined twice conflicting symbols both originated in file '/Test/src/a/b/c/T.scala'
The problem is that the class files of T are not invalidated. One first have to trigger a build of the project. In case "build automatically" is enabled, the problem with the class files should automatically disappear. However, the presentation compiler still can't handle the problem well. It should automatically be restarted after a rename refactoring.
Leave a comment
Hmm, I cannot reliably reproduce this bug with a recent build (I know that I could with older builds of the IDE). I however do see all kinds of strange behavior if I add
object T
to the mix, but that should probably discussed in a separate ticket. I'm going to look into that in more detail...
on 2015-04-18 06:46 *
By Simon Schäfer
Yes, I still do get this error.
Move to next milestone.
on 2015-05-13 08:34 *
By Simon Schäfer
Hey Matthias, do you still have interest and time to fix this ticket?
Hmm, I know this bug very well, as I'm annoyed by it regularly, but every time I try to reproduce in a controlled environment it somehow magically disappears; also note that the compiler already should restarted by
org.scalaide.core.internal.ScalaPlugin.elementChanged(event: ElementChangedEvent)
after a file is deleted.
check out what we discovered in ENSIME https://github.com/ensime/ensime-server/pull/1164
grep your codebases for new BatchSourceFile and getSourceFile
we're now trying to centralise all our changes through https://github.com/ensime/ensime-server/blob/master/core/src/main/scala/org/ensime/core/RichPresentationCompiler.scala#L227
and if we're making an in-memory edit of any AbstractFile now, we reuse the original file reference, e.g. https://github.com/ensime/ensime-server/blob/master/core/src/main/scala/org/ensime/core/Completion.scala#L103
grep your codebases for new BatchSourceFile and getSourceFile
we're now trying to centralise all our changes through https://github.com/ensime/ensime-server/blob/master/core/src/main/scala/org/ensime/core/RichPresentationCompiler.scala#L227
and if we're making an in-memory edit of any AbstractFile now, we reuse the original file reference, e.g. https://github.com/ensime/ensime-server/blob/master/core/src/main/scala/org/ensime/core/Completion.scala#L103
on 2015-11-29 07:39 *
By Simon Schäfer
Discussion on gitter: https://gitter.im/scala-ide/scala-ide?at=565a0a3249fc2afe4a4f9008
Move ticket to next milestone.
No file chosen
You have an empty file field. Please select or remove it.
Name | Size |
---|