mirror of
https://github.com/github/codeql.git
synced 2025-12-18 18:10:39 +01:00
87 lines
1.1 KiB
Go
87 lines
1.1 KiB
Go
package main
|
|
|
|
import "regexp"
|
|
|
|
func f1(i int, a []int) int {
|
|
if i <= len(a) { // NOT OK
|
|
return a[i]
|
|
}
|
|
return -1
|
|
}
|
|
|
|
func f2(i int, a []int) int {
|
|
if i < len(a) { // OK
|
|
return a[i]
|
|
}
|
|
return -1
|
|
}
|
|
|
|
func f3(i int, a []int) int {
|
|
if i <= len(a) { // OK
|
|
if i != len(a) {
|
|
return a[i]
|
|
}
|
|
}
|
|
return -1
|
|
}
|
|
|
|
func f4(i int, a []int) int {
|
|
if len(a) > 0 { // NOT OK
|
|
return a[1]
|
|
}
|
|
return -1
|
|
}
|
|
|
|
func f5(i int, a []int) int {
|
|
if len(a) > 1 { // OK
|
|
return a[1]
|
|
}
|
|
return -1
|
|
}
|
|
|
|
func f6(i int, a []int) int {
|
|
if len(a) > 0 { // OK
|
|
if len(a) > 1 {
|
|
return a[0]
|
|
}
|
|
}
|
|
return -1
|
|
}
|
|
|
|
func f7(i int, a map[int]int) int {
|
|
if i <= len(a) { // OK
|
|
return a[i]
|
|
}
|
|
return -1
|
|
}
|
|
|
|
func f8(s string) string {
|
|
r := regexp.MustCompile("(.*?),(.*?)")
|
|
m := r.FindStringSubmatch(s)
|
|
if len(m) > 0 { // OK
|
|
return m[1]
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func f9(xs []int) int {
|
|
if len(xs) > 1 {
|
|
if len(xs) != 3 || f5(0, xs) == -1 {
|
|
return 0
|
|
}
|
|
return xs[2]
|
|
}
|
|
return -1
|
|
}
|
|
|
|
type intintmap map[int]int
|
|
|
|
func f10(i int, a intintmap) int {
|
|
if i <= len(a) { // OK
|
|
return a[i]
|
|
}
|
|
return -1
|
|
}
|
|
|
|
func main() {}
|