aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/dotty/tools/dotc/parsing/JavaParsers.scala2
-rw-r--r--tests/pos/java-interop/1576/TagAnnotation.java3
-rw-r--r--tests/pos/java-interop/1576/Test.scala5
3 files changed, 9 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/parsing/JavaParsers.scala b/src/dotty/tools/dotc/parsing/JavaParsers.scala
index ed7cf9e3f..0be4226ed 100644
--- a/src/dotty/tools/dotc/parsing/JavaParsers.scala
+++ b/src/dotty/tools/dotc/parsing/JavaParsers.scala
@@ -131,7 +131,7 @@ object JavaParsers {
def makeSyntheticParam(count: Int, tpt: Tree): ValDef =
makeParam(nme.syntheticParamName(count), tpt)
def makeParam(name: TermName, tpt: Tree): ValDef =
- ValDef(name, tpt, EmptyTree).withMods(Modifiers(Flags.JavaDefined | Flags.PrivateLocalParamAccessor))
+ ValDef(name, tpt, EmptyTree).withMods(Modifiers(Flags.JavaDefined | Flags.ParamAccessor))
def makeConstructor(formals: List[Tree], tparams: List[TypeDef], flags: FlagSet = Flags.JavaDefined) = {
val vparams = mapWithIndex(formals)((p, i) => makeSyntheticParam(i + 1, p))
diff --git a/tests/pos/java-interop/1576/TagAnnotation.java b/tests/pos/java-interop/1576/TagAnnotation.java
new file mode 100644
index 000000000..3034a1a2d
--- /dev/null
+++ b/tests/pos/java-interop/1576/TagAnnotation.java
@@ -0,0 +1,3 @@
+public @interface TagAnnotation {
+ public String value();
+} \ No newline at end of file
diff --git a/tests/pos/java-interop/1576/Test.scala b/tests/pos/java-interop/1576/Test.scala
new file mode 100644
index 000000000..ea3d06a83
--- /dev/null
+++ b/tests/pos/java-interop/1576/Test.scala
@@ -0,0 +1,5 @@
+object Test {
+ val v: TagAnnotation = null
+ println(v.value) // error: value value in class TagAnnotation cannot be accessed as a
+ // member of TagAnnotation(Test.v) from module class Test$.
+}