mirror of
https://github.com/github/codeql.git
synced 2026-04-30 03:05:15 +02:00
Java: Split literals tests
This allows changing individual tests in the future without having to adjust the expected output of all other tests.
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
package booleanLiterals;
|
||||
|
||||
public class BooleanLiterals {
|
||||
boolean[] booleans = {
|
||||
true,
|
||||
false,
|
||||
// Using Unicode escapes (which are handled during pre-processing)
|
||||
\u0074\u0072\u0075\u0065, // true
|
||||
};
|
||||
|
||||
// The operation expression (e.g. `&&`) is not a literal
|
||||
boolean[] logicOperations = {
|
||||
true && true,
|
||||
false && false,
|
||||
true && false,
|
||||
true || true,
|
||||
false || false,
|
||||
true || false,
|
||||
};
|
||||
|
||||
Object[] nonBooleanLiterals = {
|
||||
"true",
|
||||
"false",
|
||||
1,
|
||||
0,
|
||||
Boolean.TRUE,
|
||||
Boolean.FALSE,
|
||||
};
|
||||
|
||||
boolean nonLiteral;
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
| BooleanLiterals.java:5:3:5:6 | true | true | true |
|
||||
| BooleanLiterals.java:6:3:6:7 | false | false | false |
|
||||
| BooleanLiterals.java:8:8:8:26 | 4\\u0072\\u0075\\u0065 | true | true |
|
||||
| BooleanLiterals.java:13:3:13:6 | true | true | true |
|
||||
| BooleanLiterals.java:13:11:13:14 | true | true | true |
|
||||
| BooleanLiterals.java:14:3:14:7 | false | false | false |
|
||||
| BooleanLiterals.java:14:12:14:16 | false | false | false |
|
||||
| BooleanLiterals.java:15:3:15:6 | true | true | true |
|
||||
| BooleanLiterals.java:15:11:15:15 | false | false | false |
|
||||
| BooleanLiterals.java:16:3:16:6 | true | true | true |
|
||||
| BooleanLiterals.java:16:11:16:14 | true | true | true |
|
||||
| BooleanLiterals.java:17:3:17:7 | false | false | false |
|
||||
| BooleanLiterals.java:17:12:17:16 | false | false | false |
|
||||
| BooleanLiterals.java:18:3:18:6 | true | true | true |
|
||||
| BooleanLiterals.java:18:11:18:15 | false | false | false |
|
||||
@@ -0,0 +1,44 @@
|
||||
package charLiterals;
|
||||
|
||||
public class CharLiterals {
|
||||
char[] chars = {
|
||||
'a',
|
||||
'\u0061', // 'a'
|
||||
'\u0000',
|
||||
'\uFFFF',
|
||||
'\ufFfF',
|
||||
'\0',
|
||||
'\n',
|
||||
'"',
|
||||
'\\',
|
||||
'\'',
|
||||
'\123', // octal escape sequence for 'S'
|
||||
'\uD800', // high surrogate
|
||||
'\uDC00', // low surrogate
|
||||
// Using Unicode escapes (which are handled during pre-processing)
|
||||
'\u005C\u005C', // escaped backslash
|
||||
'\u005C\u0027', // escaped single quote
|
||||
\u0027a\u0027, // 'a'
|
||||
};
|
||||
|
||||
// + and - are not part of the literal
|
||||
int[] charsWithSign = {
|
||||
+'a',
|
||||
-'a',
|
||||
};
|
||||
|
||||
// The operation expression (e.g. `+`) is not a literal
|
||||
int[] numericOperations = {
|
||||
'a' + 'b',
|
||||
};
|
||||
|
||||
Object[] nonCharLiterals = {
|
||||
"a",
|
||||
"",
|
||||
"\uD800\uDC00", // surrogate pair
|
||||
0,
|
||||
Character.MIN_VALUE,
|
||||
};
|
||||
|
||||
char nonLiteral;
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
| CharLiterals.java:5:3:5:5 | 'a' | a |
|
||||
| CharLiterals.java:6:3:6:10 | '\\u0061' | a |
|
||||
| CharLiterals.java:7:3:7:10 | '\\u0000' | \u0000 |
|
||||
| CharLiterals.java:8:3:8:10 | '\\uFFFF' | \uffff |
|
||||
| CharLiterals.java:9:3:9:10 | '\\ufFfF' | \uffff |
|
||||
| CharLiterals.java:10:3:10:6 | '\\0' | \u0000 |
|
||||
| CharLiterals.java:11:3:11:6 | '\\n' | \n |
|
||||
| CharLiterals.java:12:3:12:5 | '"' | " |
|
||||
| CharLiterals.java:13:3:13:6 | '\\\\' | \\ |
|
||||
| CharLiterals.java:14:3:14:6 | '\\'' | ' |
|
||||
| CharLiterals.java:15:3:15:8 | '\\123' | S |
|
||||
| CharLiterals.java:16:3:16:10 | '\\uD800' | \ufffd |
|
||||
| CharLiterals.java:17:3:17:10 | '\\uDC00' | \ufffd |
|
||||
| CharLiterals.java:19:3:19:16 | '\\u005C\\u005C' | \\ |
|
||||
| CharLiterals.java:20:3:20:16 | '\\u005C\\u0027' | ' |
|
||||
| CharLiterals.java:21:8:21:15 | 7a\\u0027 | a |
|
||||
| CharLiterals.java:26:4:26:6 | 'a' | a |
|
||||
| CharLiterals.java:27:4:27:6 | 'a' | a |
|
||||
| CharLiterals.java:32:3:32:5 | 'a' | a |
|
||||
| CharLiterals.java:32:9:32:11 | 'b' | b |
|
||||
@@ -0,0 +1,50 @@
|
||||
package doubleLiterals;
|
||||
|
||||
public class DoubleLiterals {
|
||||
double[] doubles = {
|
||||
0.0,
|
||||
0d,
|
||||
0D,
|
||||
.0d,
|
||||
.0,
|
||||
0.,
|
||||
1.234567890123456789,
|
||||
1.55555555555555555555,
|
||||
// From the JLS
|
||||
1e1,
|
||||
1.7976931348623157E308,
|
||||
0x1.f_ffff_ffff_ffffP+1023,
|
||||
4.9e-324,
|
||||
0x0.0_0000_0000_0001P-1022,
|
||||
0x1.0P-1074,
|
||||
// Using Unicode escapes (which are handled during pre-processing)
|
||||
\u0030\u002E\u0030, // 0.0
|
||||
};
|
||||
|
||||
// + and - are not part of the literal
|
||||
double[] doublesWithSign = {
|
||||
+0.0,
|
||||
-0.0,
|
||||
+1.0,
|
||||
-1.0,
|
||||
+1.7976931348623157E308,
|
||||
-1.7976931348623157E308,
|
||||
};
|
||||
|
||||
// The operation expression (e.g. `+`) is not a literal
|
||||
double[] numericOperations = {
|
||||
0.0 + 0.0,
|
||||
0.0 / 0.0,
|
||||
};
|
||||
|
||||
Object[] nonDoubleLiterals = {
|
||||
"0",
|
||||
'0',
|
||||
0,
|
||||
0.0f,
|
||||
(double) 0.0f,
|
||||
Double.MIN_VALUE,
|
||||
};
|
||||
|
||||
double nonLiteral;
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
| DoubleLiterals.java:5:3:5:5 | 0.0 | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:6:3:6:4 | 0d | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:7:3:7:4 | 0D | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:8:3:8:5 | .0d | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:9:3:9:4 | .0 | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:10:3:10:4 | 0. | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:11:3:11:22 | 1.234567890123456789 | 1.2345678901234567 | 1.2345678901234567 |
|
||||
| DoubleLiterals.java:12:3:12:24 | 1.55555555555555555555 | 1.5555555555555556 | 1.5555555555555556 |
|
||||
| DoubleLiterals.java:14:3:14:5 | 1e1 | 10.0 | 10.0 |
|
||||
| DoubleLiterals.java:15:3:15:24 | 1.7976931348623157E308 | 1.7976931348623157E308 | 1.7976931348623157E308 |
|
||||
| DoubleLiterals.java:16:3:16:28 | 0x1.f_ffff_ffff_ffffP+1023 | 1.7976931348623157E308 | 1.7976931348623157E308 |
|
||||
| DoubleLiterals.java:17:3:17:10 | 4.9e-324 | 4.9E-324 | 4.9E-324 |
|
||||
| DoubleLiterals.java:18:3:18:28 | 0x0.0_0000_0000_0001P-1022 | 4.9E-324 | 4.9E-324 |
|
||||
| DoubleLiterals.java:19:3:19:13 | 0x1.0P-1074 | 4.9E-324 | 4.9E-324 |
|
||||
| DoubleLiterals.java:21:8:21:20 | 0\\u002E\\u0030 | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:26:4:26:6 | 0.0 | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:27:4:27:6 | 0.0 | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:28:4:28:6 | 1.0 | 1.0 | 1.0 |
|
||||
| DoubleLiterals.java:29:4:29:6 | 1.0 | 1.0 | 1.0 |
|
||||
| DoubleLiterals.java:30:4:30:25 | 1.7976931348623157E308 | 1.7976931348623157E308 | 1.7976931348623157E308 |
|
||||
| DoubleLiterals.java:31:4:31:25 | 1.7976931348623157E308 | 1.7976931348623157E308 | 1.7976931348623157E308 |
|
||||
| DoubleLiterals.java:36:3:36:5 | 0.0 | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:36:9:36:11 | 0.0 | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:37:3:37:5 | 0.0 | 0.0 | 0.0 |
|
||||
| DoubleLiterals.java:37:9:37:11 | 0.0 | 0.0 | 0.0 |
|
||||
@@ -0,0 +1,49 @@
|
||||
package floatLiterals;
|
||||
|
||||
public class FloatLiterals {
|
||||
float[] floats = {
|
||||
0.0f,
|
||||
0f,
|
||||
.0f,
|
||||
0.f,
|
||||
1_0_0.0f,
|
||||
1.234567890123456789f,
|
||||
1.55555555555555555555f,
|
||||
// From the JLS
|
||||
1e1f,
|
||||
3.4028235e38f,
|
||||
0x1.fffffeP+127f,
|
||||
1.4e-45f,
|
||||
0x0.000002P-126f,
|
||||
0x1.0P-149f,
|
||||
// Using Unicode escapes (which are handled during pre-processing)
|
||||
\u0030\u002E\u0030\u0066, // 0.0f
|
||||
};
|
||||
|
||||
// + and - are not part of the literal
|
||||
float[] floatsWithSign = {
|
||||
+0.f,
|
||||
-0.f,
|
||||
+1.0f,
|
||||
-1.0f,
|
||||
+3.4028235e38f,
|
||||
-3.4028235e38f,
|
||||
};
|
||||
|
||||
// The operation expression (e.g. `+`) is not a literal
|
||||
float[] numericOperations = {
|
||||
0.0f + 0.0f,
|
||||
0.0f / 0.0f,
|
||||
};
|
||||
|
||||
Object[] nonFloatLiterals = {
|
||||
"0f",
|
||||
'0',
|
||||
0,
|
||||
0.0,
|
||||
(float) 0.0,
|
||||
Float.MIN_VALUE,
|
||||
};
|
||||
|
||||
float nonLiteral;
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
| FloatLiterals.java:5:3:5:6 | 0.0f | 0.0 | 0.0 |
|
||||
| FloatLiterals.java:6:3:6:4 | 0f | 0.0 | 0.0 |
|
||||
| FloatLiterals.java:7:3:7:5 | .0f | 0.0 | 0.0 |
|
||||
| FloatLiterals.java:8:3:8:5 | 0.f | 0.0 | 0.0 |
|
||||
| FloatLiterals.java:9:3:9:10 | 1_0_0.0f | 100.0 | 100.0 |
|
||||
| FloatLiterals.java:10:3:10:23 | 1.234567890123456789f | 1.2345679 | 1.2345679 |
|
||||
| FloatLiterals.java:11:3:11:25 | 1.55555555555555555555f | 1.5555556 | 1.5555556 |
|
||||
| FloatLiterals.java:13:3:13:6 | 1e1f | 10.0 | 10.0 |
|
||||
| FloatLiterals.java:14:3:14:15 | 3.4028235e38f | 3.4028235E38 | 3.4028235E38 |
|
||||
| FloatLiterals.java:15:3:15:18 | 0x1.fffffeP+127f | 3.4028235E38 | 3.4028235E38 |
|
||||
| FloatLiterals.java:16:3:16:10 | 1.4e-45f | 1.4E-45 | 1.4E-45 |
|
||||
| FloatLiterals.java:17:3:17:18 | 0x0.000002P-126f | 1.4E-45 | 1.4E-45 |
|
||||
| FloatLiterals.java:18:3:18:13 | 0x1.0P-149f | 1.4E-45 | 1.4E-45 |
|
||||
| FloatLiterals.java:20:8:20:26 | 0\\u002E\\u0030\\u0066 | 0.0 | 0.0 |
|
||||
| FloatLiterals.java:25:4:25:6 | 0.f | 0.0 | 0.0 |
|
||||
| FloatLiterals.java:26:4:26:6 | 0.f | 0.0 | 0.0 |
|
||||
| FloatLiterals.java:27:4:27:7 | 1.0f | 1.0 | 1.0 |
|
||||
| FloatLiterals.java:28:4:28:7 | 1.0f | 1.0 | 1.0 |
|
||||
| FloatLiterals.java:29:4:29:16 | 3.4028235e38f | 3.4028235E38 | 3.4028235E38 |
|
||||
| FloatLiterals.java:30:4:30:16 | 3.4028235e38f | 3.4028235E38 | 3.4028235E38 |
|
||||
| FloatLiterals.java:35:3:35:6 | 0.0f | 0.0 | 0.0 |
|
||||
| FloatLiterals.java:35:10:35:13 | 0.0f | 0.0 | 0.0 |
|
||||
| FloatLiterals.java:36:3:36:6 | 0.0f | 0.0 | 0.0 |
|
||||
| FloatLiterals.java:36:10:36:13 | 0.0f | 0.0 | 0.0 |
|
||||
@@ -0,0 +1,57 @@
|
||||
package integerLiterals;
|
||||
|
||||
public class IntegerLiterals {
|
||||
int[] ints = {
|
||||
0,
|
||||
1,
|
||||
0_0,
|
||||
0___0,
|
||||
0_12, // octal
|
||||
0X012, // hex
|
||||
0xaBcDeF, // hex
|
||||
0B11, // binary
|
||||
0x80000000,
|
||||
2147483647,
|
||||
-2147483648, // special case: sign is part of the literal
|
||||
// From the JLS
|
||||
0x7fff_ffff,
|
||||
0177_7777_7777, // octal
|
||||
0b0111_1111_1111_1111_1111_1111_1111_1111, // binary
|
||||
0x8000_0000,
|
||||
0200_0000_0000,
|
||||
0b1000_0000_0000_0000_0000_0000_0000_0000,
|
||||
0xffff_ffff,
|
||||
0377_7777_7777,
|
||||
0b1111_1111_1111_1111_1111_1111_1111_1111,
|
||||
// Using Unicode escapes (which are handled during pre-processing)
|
||||
\u0030, // 0
|
||||
};
|
||||
|
||||
// + and - are not part of the literal
|
||||
int[] intsWithSign = {
|
||||
+0,
|
||||
-0,
|
||||
+1,
|
||||
-1,
|
||||
+2147483647,
|
||||
};
|
||||
|
||||
// The operation expression (e.g. `+`) is not a literal
|
||||
int[] numericOperations = {
|
||||
1 + 1,
|
||||
0 / 0,
|
||||
};
|
||||
|
||||
Object[] nonIntLiterals = {
|
||||
"0",
|
||||
'0',
|
||||
0L,
|
||||
(int) 0L,
|
||||
0.0,
|
||||
(int) 0.0,
|
||||
Integer.MIN_VALUE,
|
||||
'a' + 'b', // result is int 195, but this is not a literal
|
||||
};
|
||||
|
||||
int nonLiteral;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
| IntegerLiterals.java:5:3:5:3 | 0 | 0 | 0 |
|
||||
| IntegerLiterals.java:6:3:6:3 | 1 | 1 | 1 |
|
||||
| IntegerLiterals.java:7:3:7:5 | 0_0 | 0 | 0 |
|
||||
| IntegerLiterals.java:8:3:8:7 | 0___0 | 0 | 0 |
|
||||
| IntegerLiterals.java:9:3:9:6 | 0_12 | 10 | 10 |
|
||||
| IntegerLiterals.java:10:3:10:7 | 0X012 | 18 | 18 |
|
||||
| IntegerLiterals.java:11:3:11:10 | 0xaBcDeF | 11259375 | 11259375 |
|
||||
| IntegerLiterals.java:12:3:12:6 | 0B11 | 3 | 3 |
|
||||
| IntegerLiterals.java:13:3:13:12 | 0x80000000 | -2147483648 | -2147483648 |
|
||||
| IntegerLiterals.java:14:3:14:12 | 2147483647 | 2147483647 | 2147483647 |
|
||||
| IntegerLiterals.java:15:3:15:13 | -2147483648 | -2147483648 | -2147483648 |
|
||||
| IntegerLiterals.java:17:3:17:13 | 0x7fff_ffff | 2147483647 | 2147483647 |
|
||||
| IntegerLiterals.java:18:3:18:16 | 0177_7777_7777 | 2147483647 | 2147483647 |
|
||||
| IntegerLiterals.java:19:3:19:43 | 0b0111_1111_1111_1111_1111_1111_1111_1111 | 2147483647 | 2147483647 |
|
||||
| IntegerLiterals.java:20:3:20:13 | 0x8000_0000 | -2147483648 | -2147483648 |
|
||||
| IntegerLiterals.java:21:3:21:16 | 0200_0000_0000 | -2147483648 | -2147483648 |
|
||||
| IntegerLiterals.java:22:3:22:43 | 0b1000_0000_0000_0000_0000_0000_0000_0000 | -2147483648 | -2147483648 |
|
||||
| IntegerLiterals.java:23:3:23:13 | 0xffff_ffff | -1 | -1 |
|
||||
| IntegerLiterals.java:24:3:24:16 | 0377_7777_7777 | -1 | -1 |
|
||||
| IntegerLiterals.java:25:3:25:43 | 0b1111_1111_1111_1111_1111_1111_1111_1111 | -1 | -1 |
|
||||
| IntegerLiterals.java:27:8:27:8 | 0 | 0 | 0 |
|
||||
| IntegerLiterals.java:32:4:32:4 | 0 | 0 | 0 |
|
||||
| IntegerLiterals.java:33:4:33:4 | 0 | 0 | 0 |
|
||||
| IntegerLiterals.java:34:4:34:4 | 1 | 1 | 1 |
|
||||
| IntegerLiterals.java:35:4:35:4 | 1 | 1 | 1 |
|
||||
| IntegerLiterals.java:36:4:36:13 | 2147483647 | 2147483647 | 2147483647 |
|
||||
| IntegerLiterals.java:41:3:41:3 | 1 | 1 | 1 |
|
||||
| IntegerLiterals.java:41:7:41:7 | 1 | 1 | 1 |
|
||||
| IntegerLiterals.java:42:3:42:3 | 0 | 0 | 0 |
|
||||
| IntegerLiterals.java:42:7:42:7 | 0 | 0 | 0 |
|
||||
@@ -1,3 +0,0 @@
|
||||
| literals/Literals.java:11:22:11:25 | true | true | true |
|
||||
| literals/Literals.java:16:3:16:6 | true | true | true |
|
||||
| literals/Literals.java:17:3:17:7 | false | false | false |
|
||||
@@ -1,10 +0,0 @@
|
||||
| literals/Literals.java:12:22:12:24 | 'x' | x |
|
||||
| literals/Literals.java:21:3:21:5 | 'a' | a |
|
||||
| literals/Literals.java:22:3:22:10 | '\\u0061' | a |
|
||||
| literals/Literals.java:23:3:23:10 | '\\u0000' | \u0000 |
|
||||
| literals/Literals.java:24:3:24:6 | '\\0' | \u0000 |
|
||||
| literals/Literals.java:25:3:25:6 | '\\n' | \n |
|
||||
| literals/Literals.java:26:3:26:6 | '\\0' | \u0000 |
|
||||
| literals/Literals.java:27:3:27:6 | '\\\\' | \\ |
|
||||
| literals/Literals.java:28:3:28:6 | '\\'' | ' |
|
||||
| literals/Literals.java:29:3:29:8 | '\\123' | S |
|
||||
@@ -1,16 +0,0 @@
|
||||
| literals/Literals.java:10:22:10:27 | 456.0D | 456.0 | 456.0 |
|
||||
| literals/Literals.java:33:3:33:5 | 0.0 | 0.0 | 0.0 |
|
||||
| literals/Literals.java:34:3:34:4 | 0d | 0.0 | 0.0 |
|
||||
| literals/Literals.java:35:3:35:5 | .0d | 0.0 | 0.0 |
|
||||
| literals/Literals.java:36:3:36:4 | .0 | 0.0 | 0.0 |
|
||||
| literals/Literals.java:37:4:37:6 | 0.d | 0.0 | 0.0 |
|
||||
| literals/Literals.java:38:4:38:6 | 0.d | 0.0 | 0.0 |
|
||||
| literals/Literals.java:39:3:39:22 | 1.234567890123456789 | 1.2345678901234567 | 1.2345678901234567 |
|
||||
| literals/Literals.java:40:3:40:24 | 1.55555555555555555555 | 1.5555555555555556 | 1.5555555555555556 |
|
||||
| literals/Literals.java:42:3:42:5 | 1e1 | 10.0 | 10.0 |
|
||||
| literals/Literals.java:43:3:43:24 | 1.7976931348623157E308 | 1.7976931348623157E308 | 1.7976931348623157E308 |
|
||||
| literals/Literals.java:44:4:44:25 | 1.7976931348623157E308 | 1.7976931348623157E308 | 1.7976931348623157E308 |
|
||||
| literals/Literals.java:45:3:45:28 | 0x1.f_ffff_ffff_ffffP+1023 | 1.7976931348623157E308 | 1.7976931348623157E308 |
|
||||
| literals/Literals.java:46:3:46:10 | 4.9e-324 | 4.9E-324 | 4.9E-324 |
|
||||
| literals/Literals.java:47:3:47:28 | 0x0.0_0000_0000_0001P-1022 | 4.9E-324 | 4.9E-324 |
|
||||
| literals/Literals.java:48:3:48:13 | 0x1.0P-1074 | 4.9E-324 | 4.9E-324 |
|
||||
@@ -1,16 +0,0 @@
|
||||
| literals/Literals.java:9:22:9:27 | 123.0F | 123.0 | 123.0 |
|
||||
| literals/Literals.java:52:3:52:6 | 0.0f | 0.0 | 0.0 |
|
||||
| literals/Literals.java:53:3:53:4 | 0f | 0.0 | 0.0 |
|
||||
| literals/Literals.java:54:3:54:5 | .0f | 0.0 | 0.0 |
|
||||
| literals/Literals.java:55:4:55:6 | 0.f | 0.0 | 0.0 |
|
||||
| literals/Literals.java:56:4:56:6 | 0.f | 0.0 | 0.0 |
|
||||
| literals/Literals.java:57:3:57:10 | 1_0_0.0f | 100.0 | 100.0 |
|
||||
| literals/Literals.java:58:3:58:23 | 1.234567890123456789f | 1.2345679 | 1.2345679 |
|
||||
| literals/Literals.java:59:3:59:25 | 1.55555555555555555555f | 1.5555556 | 1.5555556 |
|
||||
| literals/Literals.java:61:3:61:6 | 1e1f | 10.0 | 10.0 |
|
||||
| literals/Literals.java:62:3:62:15 | 3.4028235e38f | 3.4028235E38 | 3.4028235E38 |
|
||||
| literals/Literals.java:63:4:63:16 | 3.4028235e38f | 3.4028235E38 | 3.4028235E38 |
|
||||
| literals/Literals.java:64:3:64:18 | 0x1.fffffeP+127f | 3.4028235E38 | 3.4028235E38 |
|
||||
| literals/Literals.java:65:3:65:10 | 1.4e-45f | 1.4E-45 | 1.4E-45 |
|
||||
| literals/Literals.java:66:3:66:18 | 0x0.000002P-126f | 1.4E-45 | 1.4E-45 |
|
||||
| literals/Literals.java:67:3:67:13 | 0x1.0P-149f | 1.4E-45 | 1.4E-45 |
|
||||
@@ -1,20 +0,0 @@
|
||||
| literals/Literals.java:7:22:7:24 | 123 | 123 | 123 |
|
||||
| literals/Literals.java:71:3:71:3 | 0 | 0 | 0 |
|
||||
| literals/Literals.java:72:3:72:5 | 0_0 | 0 | 0 |
|
||||
| literals/Literals.java:73:3:73:7 | 0___0 | 0 | 0 |
|
||||
| literals/Literals.java:74:3:74:6 | 0_12 | 10 | 10 |
|
||||
| literals/Literals.java:75:3:75:7 | 0X012 | 18 | 18 |
|
||||
| literals/Literals.java:76:3:76:10 | 0xaBcDeF | 11259375 | 11259375 |
|
||||
| literals/Literals.java:77:3:77:6 | 0B11 | 3 | 3 |
|
||||
| literals/Literals.java:78:3:78:12 | 0x80000000 | -2147483648 | -2147483648 |
|
||||
| literals/Literals.java:79:3:79:12 | 2147483647 | 2147483647 | 2147483647 |
|
||||
| literals/Literals.java:80:3:80:13 | -2147483648 | -2147483648 | -2147483648 |
|
||||
| literals/Literals.java:82:3:82:13 | 0x7fff_ffff | 2147483647 | 2147483647 |
|
||||
| literals/Literals.java:83:3:83:16 | 0177_7777_7777 | 2147483647 | 2147483647 |
|
||||
| literals/Literals.java:84:3:84:43 | 0b0111_1111_1111_1111_1111_1111_1111_1111 | 2147483647 | 2147483647 |
|
||||
| literals/Literals.java:85:3:85:13 | 0x8000_0000 | -2147483648 | -2147483648 |
|
||||
| literals/Literals.java:86:3:86:16 | 0200_0000_0000 | -2147483648 | -2147483648 |
|
||||
| literals/Literals.java:87:3:87:43 | 0b1000_0000_0000_0000_0000_0000_0000_0000 | -2147483648 | -2147483648 |
|
||||
| literals/Literals.java:88:3:88:13 | 0xffff_ffff | -1 | -1 |
|
||||
| literals/Literals.java:89:3:89:16 | 0377_7777_7777 | -1 | -1 |
|
||||
| literals/Literals.java:90:3:90:43 | 0b1111_1111_1111_1111_1111_1111_1111_1111 | -1 | -1 |
|
||||
@@ -1,20 +0,0 @@
|
||||
| literals/Literals.java:8:22:8:25 | 456L | 456 |
|
||||
| literals/Literals.java:94:3:94:4 | 0l | 0 |
|
||||
| literals/Literals.java:95:3:95:4 | 0L | 0 |
|
||||
| literals/Literals.java:96:3:96:6 | 0_0L | 0 |
|
||||
| literals/Literals.java:97:3:97:8 | 0___0L | 0 |
|
||||
| literals/Literals.java:98:3:98:7 | 0_12L | 10 |
|
||||
| literals/Literals.java:99:3:99:8 | 0X012L | 18 |
|
||||
| literals/Literals.java:100:3:100:11 | 0xaBcDeFL | 11259375 |
|
||||
| literals/Literals.java:101:3:101:7 | 0B11L | 3 |
|
||||
| literals/Literals.java:102:3:102:22 | 9223372036854775807L | 9223372036854775807 |
|
||||
| literals/Literals.java:103:3:103:23 | -9223372036854775808L | -9223372036854775808 |
|
||||
| literals/Literals.java:105:3:105:24 | 0x7fff_ffff_ffff_ffffL | 9223372036854775807 |
|
||||
| literals/Literals.java:106:3:106:30 | 07_7777_7777_7777_7777_7777L | 9223372036854775807 |
|
||||
| literals/Literals.java:107:3:107:84 | 0b0111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L | 9223372036854775807 |
|
||||
| literals/Literals.java:108:3:108:24 | 0x8000_0000_0000_0000L | -9223372036854775808 |
|
||||
| literals/Literals.java:109:3:109:31 | 010_0000_0000_0000_0000_0000L | -9223372036854775808 |
|
||||
| literals/Literals.java:110:3:110:84 | 0b1000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000L | -9223372036854775808 |
|
||||
| literals/Literals.java:111:3:111:24 | 0xffff_ffff_ffff_ffffL | -1 |
|
||||
| literals/Literals.java:112:3:112:31 | 017_7777_7777_7777_7777_7777L | -1 |
|
||||
| literals/Literals.java:113:3:113:84 | 0b1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L | -1 |
|
||||
@@ -1,20 +0,0 @@
|
||||
| literals/Literals.java:6:22:6:37 | "literal string" | literal string | literal string |
|
||||
| literals/Literals.java:117:3:117:19 | "hello" + "world" | helloworld | helloworld |
|
||||
| literals/Literals.java:118:3:118:17 | "hello,\\tworld" | hello,\tworld | hello,\tworld |
|
||||
| literals/Literals.java:119:3:119:21 | "hello,\\u0009world" | hello,\tworld | hello,\tworld |
|
||||
| literals/Literals.java:120:3:120:10 | "\\u0061" | a | a |
|
||||
| literals/Literals.java:121:3:121:6 | "\\0" | \u0000 | \u0000 |
|
||||
| literals/Literals.java:122:3:122:9 | "\\0000" | \u00000 | \u00000 |
|
||||
| literals/Literals.java:123:3:123:6 | "\\"" | " | " |
|
||||
| literals/Literals.java:124:3:124:6 | "\\'" | ' | ' |
|
||||
| literals/Literals.java:125:3:125:6 | "\\n" | \n | \n |
|
||||
| literals/Literals.java:126:3:126:6 | "\\\\" | \\ | \\ |
|
||||
| literals/Literals.java:127:3:127:13 | "test \\123" | test S | test S |
|
||||
| literals/Literals.java:128:3:128:9 | "\\1234" | S4 | S4 |
|
||||
| literals/Literals.java:129:3:129:13 | "\\u0061567" | a567 | a567 |
|
||||
| literals/Literals.java:130:3:130:13 | "\\u1234567" | \u1234567 | \u1234567 |
|
||||
| literals/Literals.java:131:3:131:18 | "\\uaBcDeF\\u0aB1" | \uabcdeF\u0ab1 | \uabcdeF\u0ab1 |
|
||||
| literals/Literals.java:132:3:132:16 | "\\uD800\\uDC00" | \ud800\udc00 | \ud800\udc00 |
|
||||
| literals/Literals.java:134:3:134:10 | "\\uD800" | \ufffd | \ufffd |
|
||||
| literals/Literals.java:135:3:135:10 | "\\uDC00" | \ufffd | \ufffd |
|
||||
| literals/Literals.java:136:3:136:31 | "hello\\uD800hello\\uDC00world" | hello\ufffdhello\ufffdworld | hello\ufffdhello\ufffdworld |
|
||||
@@ -1,4 +1,4 @@
|
||||
class NumericLiterals {
|
||||
class NumericLiterals {
|
||||
void negativeLiterals() {
|
||||
float f = -1f;
|
||||
double d = -1d;
|
||||
@@ -0,0 +1,12 @@
|
||||
| NumericLiterals.java:3:14:3:15 | 1f | 1.0 | NumericLiterals.java:3:13:3:15 | -... |
|
||||
| NumericLiterals.java:4:15:4:16 | 1d | 1.0 | NumericLiterals.java:4:14:4:16 | -... |
|
||||
| NumericLiterals.java:5:13:5:22 | 2147483647 | 2147483647 | NumericLiterals.java:5:12:5:22 | -... |
|
||||
| NumericLiterals.java:6:12:6:22 | -2147483648 | -2147483648 | NumericLiterals.java:6:7:6:22 | i2 |
|
||||
| NumericLiterals.java:7:13:7:46 | 0b10000000000000000000000000000000 | -2147483648 | NumericLiterals.java:7:12:7:46 | -... |
|
||||
| NumericLiterals.java:8:13:8:24 | 020000000000 | -2147483648 | NumericLiterals.java:8:12:8:24 | -... |
|
||||
| NumericLiterals.java:9:13:9:22 | 0x80000000 | -2147483648 | NumericLiterals.java:9:12:9:22 | -... |
|
||||
| NumericLiterals.java:10:14:10:33 | 9223372036854775807L | 9223372036854775807 | NumericLiterals.java:10:13:10:33 | -... |
|
||||
| NumericLiterals.java:11:13:11:33 | -9223372036854775808L | -9223372036854775808 | NumericLiterals.java:11:8:11:33 | l2 |
|
||||
| NumericLiterals.java:12:14:12:80 | 0b1000000000000000000000000000000000000000000000000000000000000000L | -9223372036854775808 | NumericLiterals.java:12:13:12:80 | -... |
|
||||
| NumericLiterals.java:13:14:13:37 | 01000000000000000000000L | -9223372036854775808 | NumericLiterals.java:13:13:13:37 | -... |
|
||||
| NumericLiterals.java:14:14:14:32 | 0x8000000000000000L | -9223372036854775808 | NumericLiterals.java:14:13:14:32 | -... |
|
||||
@@ -1,138 +0,0 @@
|
||||
package literals;
|
||||
|
||||
public class Literals {
|
||||
public int notAliteral;
|
||||
public void doStuff() {
|
||||
System.out.println("literal string");
|
||||
System.out.println(123);
|
||||
System.out.println(456L);
|
||||
System.out.println(123.0F);
|
||||
System.out.println(456.0D);
|
||||
System.out.println(true);
|
||||
System.out.println('x');
|
||||
}
|
||||
|
||||
boolean[] booleans = {
|
||||
true,
|
||||
false
|
||||
};
|
||||
|
||||
char[] chars = {
|
||||
'a',
|
||||
'\u0061', // 'a'
|
||||
'\u0000',
|
||||
'\0',
|
||||
'\n',
|
||||
'\0',
|
||||
'\\',
|
||||
'\'',
|
||||
'\123' // octal escape sequence for 'S'
|
||||
};
|
||||
|
||||
double[] doubles = {
|
||||
0.0,
|
||||
0d,
|
||||
.0d,
|
||||
.0,
|
||||
-0.d,
|
||||
+0.d,
|
||||
1.234567890123456789,
|
||||
1.55555555555555555555,
|
||||
// From the JLS
|
||||
1e1,
|
||||
1.7976931348623157E308,
|
||||
-1.7976931348623157E308,
|
||||
0x1.f_ffff_ffff_ffffP+1023,
|
||||
4.9e-324,
|
||||
0x0.0_0000_0000_0001P-1022,
|
||||
0x1.0P-1074
|
||||
};
|
||||
|
||||
float[] floats = {
|
||||
0.0f,
|
||||
0f,
|
||||
.0f,
|
||||
-0.f,
|
||||
+0.f,
|
||||
1_0_0.0f,
|
||||
1.234567890123456789f,
|
||||
1.55555555555555555555f,
|
||||
// From the JLS
|
||||
1e1f,
|
||||
3.4028235e38f,
|
||||
-3.4028235e38f,
|
||||
0x1.fffffeP+127f,
|
||||
1.4e-45f,
|
||||
0x0.000002P-126f,
|
||||
0x1.0P-149f
|
||||
};
|
||||
|
||||
int[] ints = {
|
||||
0,
|
||||
0_0,
|
||||
0___0,
|
||||
0_12, // octal
|
||||
0X012, // hex
|
||||
0xaBcDeF, // hex
|
||||
0B11, // binary
|
||||
0x80000000,
|
||||
2147483647,
|
||||
-2147483648,
|
||||
// From the JLS
|
||||
0x7fff_ffff,
|
||||
0177_7777_7777, // octal
|
||||
0b0111_1111_1111_1111_1111_1111_1111_1111, // binary
|
||||
0x8000_0000,
|
||||
0200_0000_0000,
|
||||
0b1000_0000_0000_0000_0000_0000_0000_0000,
|
||||
0xffff_ffff,
|
||||
0377_7777_7777,
|
||||
0b1111_1111_1111_1111_1111_1111_1111_1111
|
||||
};
|
||||
|
||||
long[] longs = {
|
||||
0l,
|
||||
0L,
|
||||
0_0L,
|
||||
0___0L,
|
||||
0_12L, // octal
|
||||
0X012L, // hex
|
||||
0xaBcDeFL, // hex
|
||||
0B11L, // binary
|
||||
9223372036854775807L,
|
||||
-9223372036854775808L,
|
||||
// From the JLS
|
||||
0x7fff_ffff_ffff_ffffL,
|
||||
07_7777_7777_7777_7777_7777L, // octal
|
||||
0b0111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L, // binary
|
||||
0x8000_0000_0000_0000L,
|
||||
010_0000_0000_0000_0000_0000L,
|
||||
0b1000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000L,
|
||||
0xffff_ffff_ffff_ffffL,
|
||||
017_7777_7777_7777_7777_7777L,
|
||||
0b1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L
|
||||
};
|
||||
|
||||
String[] strings = {
|
||||
"hello" + "world", // two separate literals
|
||||
"hello,\tworld",
|
||||
"hello,\u0009world",
|
||||
"\u0061", // 'a'
|
||||
"\0",
|
||||
"\0000",
|
||||
"\"",
|
||||
"\'",
|
||||
"\n",
|
||||
"\\",
|
||||
"test \123", // octal escape sequence for 'S'
|
||||
"\1234", // octal escape followed by '4'
|
||||
"\u0061567", // escape sequence for 'a' followed by "567"
|
||||
"\u1234567", // '\u1234' followed by "567"
|
||||
"\uaBcDeF\u0aB1", // '\uABCD' followed by "eF" followed by '\u0AB1'
|
||||
"\uD800\uDC00", // surrogate pair
|
||||
// Unpaired surrogates
|
||||
"\uD800",
|
||||
"\uDC00",
|
||||
"hello\uD800hello\uDC00world"
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
package longLiterals;
|
||||
|
||||
public class LongLiterals {
|
||||
long[] longs = {
|
||||
0l,
|
||||
0L,
|
||||
1L,
|
||||
0_0L,
|
||||
0___0L,
|
||||
0_12L, // octal
|
||||
0X012L, // hex
|
||||
0xaBcDeFL, // hex
|
||||
0B11L, // binary
|
||||
9223372036854775807L,
|
||||
-9223372036854775808L, // special case: sign is part of the literal
|
||||
// From the JLS
|
||||
0x7fff_ffff_ffff_ffffL,
|
||||
07_7777_7777_7777_7777_7777L, // octal
|
||||
0b0111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L, // binary
|
||||
0x8000_0000_0000_0000L,
|
||||
010_0000_0000_0000_0000_0000L,
|
||||
0b1000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000L,
|
||||
0xffff_ffff_ffff_ffffL,
|
||||
017_7777_7777_7777_7777_7777L,
|
||||
0b1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L,
|
||||
// Using Unicode escapes (which are handled during pre-processing)
|
||||
\u0030\u004C, // 0L
|
||||
};
|
||||
|
||||
// + and - are not part of the literal
|
||||
long[] longsWithSign = {
|
||||
+0L,
|
||||
-0L,
|
||||
+1L,
|
||||
-1L,
|
||||
+9223372036854775807L,
|
||||
};
|
||||
|
||||
// The operation expression (e.g. `+`) is not a literal
|
||||
long[] numericOperations = {
|
||||
1L + 1L,
|
||||
0L / 0L,
|
||||
};
|
||||
|
||||
Object[] longLongLiterals = {
|
||||
"0L",
|
||||
'0',
|
||||
0,
|
||||
(long) 0,
|
||||
0.0,
|
||||
(long) 0.0,
|
||||
Long.MIN_VALUE,
|
||||
};
|
||||
|
||||
long nonLiteral;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
| LongLiterals.java:5:3:5:4 | 0l | 0 |
|
||||
| LongLiterals.java:6:3:6:4 | 0L | 0 |
|
||||
| LongLiterals.java:7:3:7:4 | 1L | 1 |
|
||||
| LongLiterals.java:8:3:8:6 | 0_0L | 0 |
|
||||
| LongLiterals.java:9:3:9:8 | 0___0L | 0 |
|
||||
| LongLiterals.java:10:3:10:7 | 0_12L | 10 |
|
||||
| LongLiterals.java:11:3:11:8 | 0X012L | 18 |
|
||||
| LongLiterals.java:12:3:12:11 | 0xaBcDeFL | 11259375 |
|
||||
| LongLiterals.java:13:3:13:7 | 0B11L | 3 |
|
||||
| LongLiterals.java:14:3:14:22 | 9223372036854775807L | 9223372036854775807 |
|
||||
| LongLiterals.java:15:3:15:23 | -9223372036854775808L | -9223372036854775808 |
|
||||
| LongLiterals.java:17:3:17:24 | 0x7fff_ffff_ffff_ffffL | 9223372036854775807 |
|
||||
| LongLiterals.java:18:3:18:30 | 07_7777_7777_7777_7777_7777L | 9223372036854775807 |
|
||||
| LongLiterals.java:19:3:19:84 | 0b0111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L | 9223372036854775807 |
|
||||
| LongLiterals.java:20:3:20:24 | 0x8000_0000_0000_0000L | -9223372036854775808 |
|
||||
| LongLiterals.java:21:3:21:31 | 010_0000_0000_0000_0000_0000L | -9223372036854775808 |
|
||||
| LongLiterals.java:22:3:22:84 | 0b1000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000L | -9223372036854775808 |
|
||||
| LongLiterals.java:23:3:23:24 | 0xffff_ffff_ffff_ffffL | -1 |
|
||||
| LongLiterals.java:24:3:24:31 | 017_7777_7777_7777_7777_7777L | -1 |
|
||||
| LongLiterals.java:25:3:25:84 | 0b1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L | -1 |
|
||||
| LongLiterals.java:27:8:27:14 | 0\\u004C | 0 |
|
||||
| LongLiterals.java:32:4:32:5 | 0L | 0 |
|
||||
| LongLiterals.java:33:4:33:5 | 0L | 0 |
|
||||
| LongLiterals.java:34:4:34:5 | 1L | 1 |
|
||||
| LongLiterals.java:35:4:35:5 | 1L | 1 |
|
||||
| LongLiterals.java:36:4:36:23 | 9223372036854775807L | 9223372036854775807 |
|
||||
| LongLiterals.java:41:3:41:4 | 1L | 1 |
|
||||
| LongLiterals.java:41:8:41:9 | 1L | 1 |
|
||||
| LongLiterals.java:42:3:42:4 | 0L | 0 |
|
||||
| LongLiterals.java:42:8:42:9 | 0L | 0 |
|
||||
@@ -0,0 +1,59 @@
|
||||
package stringLiterals;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
public class StringLiterals {
|
||||
String[] strings = {
|
||||
"",
|
||||
"hello,\tworld",
|
||||
"hello,\u0009world",
|
||||
"\u0061", // 'a'
|
||||
"\0",
|
||||
"\uFFFF",
|
||||
"\ufFfF",
|
||||
"\"",
|
||||
"\'",
|
||||
"\n",
|
||||
"\\",
|
||||
"test \123", // octal escape sequence for 'S'
|
||||
"\1234", // octal escape followed by '4'
|
||||
"\0000", // octal escape \000 followed by '0'
|
||||
"\u0061567", // escape sequence for 'a' followed by "567"
|
||||
"\u1234567", // '\u1234' followed by "567"
|
||||
"\uaBcDeF\u0aB1", // '\uABCD' followed by "eF" followed by '\u0AB1'
|
||||
"\uD800\uDC00", // surrogate pair
|
||||
"\uDBFF\uDFFF", // U+10FFFF
|
||||
// Unpaired surrogates
|
||||
"\uD800",
|
||||
"\uDC00",
|
||||
"hello\uD800hello\uDC00world", // malformed surrogates
|
||||
// Using Unicode escapes (which are handled during pre-processing)
|
||||
"\u005C\u0022", // escaped double quote ("\"")
|
||||
\u0022\u0061\u0022, // "a"
|
||||
};
|
||||
|
||||
// The concatenation (`+`) is not a string literal
|
||||
String[] stringConcatenation = {
|
||||
// CodeQL erroneously reports this as one literal, see https://github.com/github/codeql/issues/5469
|
||||
"hello" + "world",
|
||||
null + "a",
|
||||
"a" + null,
|
||||
"a" + 1,
|
||||
1 + "a",
|
||||
"a" + true,
|
||||
true + "a",
|
||||
"a" + 'b',
|
||||
'b' + "a",
|
||||
};
|
||||
|
||||
Object[] nonStringLiterals = {
|
||||
'a',
|
||||
'"',
|
||||
true,
|
||||
null,
|
||||
0,
|
||||
File.pathSeparator
|
||||
};
|
||||
|
||||
String nonLiteral;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
| StringLiterals.java:7:3:7:4 | "" | | |
|
||||
| StringLiterals.java:8:3:8:17 | "hello,\\tworld" | hello,\tworld | hello,\tworld |
|
||||
| StringLiterals.java:9:3:9:21 | "hello,\\u0009world" | hello,\tworld | hello,\tworld |
|
||||
| StringLiterals.java:10:3:10:10 | "\\u0061" | a | a |
|
||||
| StringLiterals.java:11:3:11:6 | "\\0" | \u0000 | \u0000 |
|
||||
| StringLiterals.java:12:3:12:10 | "\\uFFFF" | \uffff | \uffff |
|
||||
| StringLiterals.java:13:3:13:10 | "\\ufFfF" | \uffff | \uffff |
|
||||
| StringLiterals.java:14:3:14:6 | "\\"" | " | " |
|
||||
| StringLiterals.java:15:3:15:6 | "\\'" | ' | ' |
|
||||
| StringLiterals.java:16:3:16:6 | "\\n" | \n | \n |
|
||||
| StringLiterals.java:17:3:17:6 | "\\\\" | \\ | \\ |
|
||||
| StringLiterals.java:18:3:18:13 | "test \\123" | test S | test S |
|
||||
| StringLiterals.java:19:3:19:9 | "\\1234" | S4 | S4 |
|
||||
| StringLiterals.java:20:3:20:9 | "\\0000" | \u00000 | \u00000 |
|
||||
| StringLiterals.java:21:3:21:13 | "\\u0061567" | a567 | a567 |
|
||||
| StringLiterals.java:22:3:22:13 | "\\u1234567" | \u1234567 | \u1234567 |
|
||||
| StringLiterals.java:23:3:23:18 | "\\uaBcDeF\\u0aB1" | \uabcdeF\u0ab1 | \uabcdeF\u0ab1 |
|
||||
| StringLiterals.java:24:3:24:16 | "\\uD800\\uDC00" | \ud800\udc00 | \ud800\udc00 |
|
||||
| StringLiterals.java:25:3:25:16 | "\\uDBFF\\uDFFF" | \udbff\udfff | \udbff\udfff |
|
||||
| StringLiterals.java:27:3:27:10 | "\\uD800" | \ufffd | \ufffd |
|
||||
| StringLiterals.java:28:3:28:10 | "\\uDC00" | \ufffd | \ufffd |
|
||||
| StringLiterals.java:29:3:29:31 | "hello\\uD800hello\\uDC00world" | hello\ufffdhello\ufffdworld | hello\ufffdhello\ufffdworld |
|
||||
| StringLiterals.java:31:3:31:16 | "\\u005C\\u0022" | " | " |
|
||||
| StringLiterals.java:32:8:32:20 | 2\\u0061\\u0022 | a | a |
|
||||
| StringLiterals.java:38:3:38:19 | "hello" + "world" | helloworld | helloworld |
|
||||
| StringLiterals.java:39:10:39:12 | "a" | a | a |
|
||||
| StringLiterals.java:40:3:40:5 | "a" | a | a |
|
||||
| StringLiterals.java:41:3:41:5 | "a" | a | a |
|
||||
| StringLiterals.java:42:7:42:9 | "a" | a | a |
|
||||
| StringLiterals.java:43:3:43:5 | "a" | a | a |
|
||||
| StringLiterals.java:44:10:44:12 | "a" | a | a |
|
||||
| StringLiterals.java:45:3:45:5 | "a" | a | a |
|
||||
| StringLiterals.java:46:9:46:11 | "a" | a | a |
|
||||
Reference in New Issue
Block a user