Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
uydwl
mjtest-tests
Commits
09453ccc
Verified
Commit
09453ccc
authored
Nov 11, 2018
by
ubduq
Browse files
Add test cases for semantic analysis
parent
ad265467
Changes
24
Hide whitespace changes
Inline
Side-by-side
semantic/array_access.java
0 → 100644
View file @
09453ccc
class
ArrayAccess
{
public
static
void
main
(
String
[]
args
)
{
int
[]
array
=
new
int
[
3
];
array
[
2
]
=
42
;
int
elem
=
array
[
2
];
}
}
semantic/array_summation.mj
0 → 100644
View file @
09453ccc
class Summator {
public int sum(int[] array, int len) {
int sum = 0;
int i = 0;
while(i < len) {
sum = sum + array[i];
i = i + 1;
}
return sum;
}
public static void main(String[] args) {
Summator acc = new Summator();
int arrayLen = System.in.read();
int[] array = new int[arrayLen];
int i = 0;
while(i < arrayLen) {
array[i] = System.in.read();
i = i + 1;
}
int arraySum = acc.sum(array, arrayLen);
System.out.write(arraySum);
System.out.flush();
}
}
semantic/duplicate_class.invalid.mj
0 → 100644
View file @
09453ccc
class DuplicateClass {}
class DuplicateClass {}
semantic/duplicate_field.invalid.mj
0 → 100644
View file @
09453ccc
class DuplicateField {
public int duplicate;
public int duplicate;
public static void main(String[] args) {}
}
semantic/empty_while.java
0 → 100644
View file @
09453ccc
class
EmptyWhile
{
public
static
void
main
(
String
[]
args
)
{
while
(
true
);
}
}
semantic/field_shadowing.java
0 → 100644
View file @
09453ccc
class
FieldShadowing
{
public
int
x
;
public
static
void
main
(
String
[]
args
)
{}
public
void
test
()
{
int
x
=
42
;
this
.
x
=
x
;
}
}
semantic/invalid_arithmetic_comparison.invalid.mj
0 → 100644
View file @
09453ccc
class MismatchingTypeComparison {
public static void main(String[] args) {
boolean x = false;
boolean y = true;
boolean a;
a = x < y;
a = x <= y;
a = x > y;
a = x >= y;
}
}
semantic/minimal_valid_program.java
0 → 100644
View file @
09453ccc
class
MyClass
{
public
static
void
main
(
String
[]
args
)
{}
}
semantic/mismatching_return_type.invalid.mj
0 → 100644
View file @
09453ccc
class DeepThought {
public static void main(String[] args) {
DeepThought a = new DeepThought();
boolean b = a.returnTheAnswer();
}
public int returnTheAnswer() {
return 42;
}
}
semantic/mismatching_type_comparison.invalid.mj
0 → 100644
View file @
09453ccc
class MismatchingTypeComparison {
public static void main(String[] args) {
int a = 10;
int b = 42;
boolean x = false;
boolean y = true;
boolean z;
z = a < x;
z = a <= x;
z = a > x;
z = a >= x;
z = a != x;
z = b != y;
}
}
semantic/missing_static_method.invalid.java
0 → 100644
View file @
09453ccc
class
MissingStaticMethod
{
public
void
test
()
{
int
a
=
42
;
}
}
semantic/multiple_static_methods.invalid.java
0 → 100644
View file @
09453ccc
class
MultipleStaticMethods
{
public
static
void
main
(
String
[]
args
)
{}
public
static
void
test
(
String
[]
args
)
{}
}
semantic/redeclaration_parameter.invalid.mj
0 → 100644
View file @
09453ccc
class Test {
public static void main(String[] args) { }
public void test(int a) {
int a = 23;
}
}
semantic/redeclaration_same_scope.invalid.mj
0 → 100644
View file @
09453ccc
class RedeclarationSameScope {
public static void main(String[] args) {
int a = 0;
int a = 42;
}
}
semantic/redeclaration_shadowing.invalid.mj
0 → 100644
View file @
09453ccc
class Test {
public static void main(String[] args) {
}
public void test() {
int a = 0;
{
int a = 42;
}
}
}
semantic/renamed_main_method.invalid.java
0 → 100644
View file @
09453ccc
class
Test
{
public
static
void
test
(
String
[]
params
)
{}
}
semantic/simple_nested_if_else.java
0 → 100644
View file @
09453ccc
class
Test
{
public
static
void
main
(
String
[]
args
)
{}
public
boolean
test
()
{
int
a
=
10
;
if
(
a
>
0
)
if
(
a
>
5
)
return
true
;
else
return
false
;
else
return
true
;
}
}
semantic/special_param_usage.invalid.mj
0 → 100644
View file @
09453ccc
class SpecialParamUsage {
public static void main(String[] args) {
String[] myArgs = args;
}
}
semantic/standard_library_calls.mj
0 → 100644
View file @
09453ccc
class StandardLibraryCalls {
public static void main(String[] args) {
int a = 42;
int b = System.in.read();
System.out.println(a);
System.out.write(a);
System.out.flush();
}
}
semantic/static_method_call.invalid.mj
0 → 100644
View file @
09453ccc
class StaticMethodCall {
public static void main(String[] args) {}
public void test() {
int arg = 10;
main(arg);
}
}
Prev
1
2
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment