aboutsummaryrefslogtreecommitdiff
path: root/tests/untried/neg/sensitive.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/untried/neg/sensitive.scala')
-rw-r--r--tests/untried/neg/sensitive.scala18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/untried/neg/sensitive.scala b/tests/untried/neg/sensitive.scala
new file mode 100644
index 000000000..a084a0a8c
--- /dev/null
+++ b/tests/untried/neg/sensitive.scala
@@ -0,0 +1,18 @@
+class Certificate{}
+
+object Admin extends Certificate;
+
+class SecurityViolationException extends Exception
+
+object Sensitive {
+ def makeSensitive(credentials: Certificate): Sensitive =
+ if (credentials == Admin) new Sensitive()
+ else throw new SecurityViolationException
+}
+class Sensitive private () {
+}
+
+object Attacker {
+ val x = Sensitive.makeSensitive(null)
+ val y = new Sensitive()
+}