diff options
author | Den Shabalin <den.shabalin@gmail.com> | 2013-10-11 20:25:26 +0200 |
---|---|---|
committer | Den Shabalin <den.shabalin@gmail.com> | 2013-10-18 17:24:52 +0200 |
commit | 68e9e267e63f13ce2e99843df989a1306f91cd19 (patch) | |
tree | 78b79a4dea3864917fb1bf9ad207c4c8610b407b /src/compiler | |
parent | cf58d7c88c35c41f749298de5b0de09fca72df1b (diff) | |
download | scala-68e9e267e63f13ce2e99843df989a1306f91cd19.tar.gz scala-68e9e267e63f13ce2e99843df989a1306f91cd19.tar.bz2 scala-68e9e267e63f13ce2e99843df989a1306f91cd19.zip |
use concurrent hash map with atomic integers
This should ensure that concurrent access to the
fresh name creator is properly synchronized.
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/scala/reflect/macros/contexts/Names.scala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/compiler/scala/reflect/macros/contexts/Names.scala b/src/compiler/scala/reflect/macros/contexts/Names.scala index e535754a98..c2f14cf0f1 100644 --- a/src/compiler/scala/reflect/macros/contexts/Names.scala +++ b/src/compiler/scala/reflect/macros/contexts/Names.scala @@ -4,7 +4,7 @@ package contexts trait Names { self: Context => - lazy val freshNameCreator = callsiteTyper.context.unit.fresh + def freshNameCreator = callsiteTyper.context.unit.fresh def fresh(): String = freshName() @@ -16,7 +16,7 @@ trait Names { freshName[NameType](name) def freshName(): String = - freshNameCreator.newName() + freshName("fresh$") def freshName(name: String): String = freshNameCreator.newName(name) |