This test checks gopls behavior when hovering over basic literals.

-- basiclit.go --
package basiclit

func _() {
	_ = 'a' //@hover("'a'", "'a'", latinA)
	_ = 0x61 //@hover("0x61", "0x61", latinAHex)

	_ = '\u2211' //@hover("'\\u2211'", "'\\u2211'", summation)
	_ = 0x2211 //@hover("0x2211", "0x2211", summationHex)
	_ = "foo \u2211 bar" //@hover("\\u2211", "\\u2211", summation)

	_ = '\a' //@hover("'\\a'", "'\\a'", control)
	_ = "foo \a bar" //@hover("\\a", "\\a", control)

	_ = '\U0001F30A' //@hover("'\\U0001F30A'", "'\\U0001F30A'", waterWave)
	_ = 0x0001F30A //@hover("0x0001F30A", "0x0001F30A", waterWaveHex)
	_ = 0X0001F30A //@hover("0X0001F30A", "0X0001F30A", waterWaveHex)
	_ = "foo \U0001F30A bar" //@hover("\\U0001F30A", "\\U0001F30A", waterWave)

	_ = '\x7E' //@hover("'\\x7E'", "'\\x7E'", tilde)
	_ = "foo \x7E bar" //@hover("\\x7E", "\\x7E", tilde)
	_ = "foo \a bar" //@hover("\\a", "\\a", control)

	_ = '\173' //@hover("'\\173'", "'\\173'", leftCurly)
	_ = "foo \173 bar" //@hover("\\173","\\173", leftCurly)
	_ = "foo \173 bar \u2211 baz" //@hover("\\173","\\173", leftCurly)
	_ = "foo \173 bar \u2211 baz" //@hover("\\u2211","\\u2211", summation)
	_ = "foo\173bar\u2211baz" //@hover("\\173","\\173", leftCurly)
	_ = "foo\173bar\u2211baz" //@hover("\\u2211","\\u2211", summation)

	// search for runes in string only if there is an escaped sequence
	_ = "hello" //@hover(`"hello"`, _, _)

	// incorrect escaped rune sequences
	_ = '\0' //@hover("'\\0'", _, _),diag(re`\\0()'`, re"illegal character")
	_ = '\u22111' //@hover("'\\u22111'", _, _)
	_ = '\U00110000' //@hover("'\\U00110000'", _, _)
	_ = '\u12e45'//@hover("'\\u12e45'", _, _)
	_ = '\xa' //@hover("'\\xa'", _, _)
	_ = 'aa' //@hover("'aa'", _, _)

	// other basic lits
	_ = 1 //@hover("1", _, _)
	_ = 1.2 //@hover("1.2", _, _)
	_ = 1.2i //@hover("1.2i", _, _)
	_ = 0123 //@hover("0123", _, _)
	_ = 0b1001 //@hover("0b", "0b1001", binaryNumber)
	_ = 0B1001 //@hover("0B", "0B1001", binaryNumber)
	_ = 0o77 //@hover("0o", "0o77", octalNumber)
	_ = 0O77 //@hover("0O", "0O77", octalNumber)
	_ = 0x1234567890 //@hover("0x1234567890", "0x1234567890", hexNumber)
	_ = 0X1234567890 //@hover("0X1234567890", "0X1234567890", hexNumber)
	_ = 0x1000000000000000000 //@hover("0x1", "0x1000000000000000000", bigHex)
)
-- @bigHex --
4722366482869645213696
-- @binaryNumber --
9
-- @control --
U+0007, control
-- @hexNumber --
78187493520
-- @latinA --
'a', U+0061, LATIN SMALL LETTER A
-- @latinAHex --
97, 'a', U+0061, LATIN SMALL LETTER A
-- @leftCurly --
'{', U+007B, LEFT CURLY BRACKET
-- @octalNumber --
63
-- @summation --
'∑', U+2211, N-ARY SUMMATION
-- @summationHex --
8721, '∑', U+2211, N-ARY SUMMATION
-- @tilde --
'~', U+007E, TILDE
-- @waterWave --
'🌊', U+1F30A, WATER WAVE
-- @waterWaveHex --
127754, '🌊', U+1F30A, WATER WAVE
