Giant blob of minor changes
[dotfiles/.git] / .config / coc / extensions / coc-go-data / tools / pkg / mod / golang.org / x / tools@v0.0.0-20201028153306-37f0764111ff / go / pointer / TODO
1 -*- text -*-
2
3 Pointer analysis to-do list
4 ===========================
5
6 CONSTRAINT GENERATION:
7 - support reflection:
8   - a couple of operators are missing
9   - reflect.Values may contain lvalues (CanAddr)
10 - implement native intrinsics.  These vary by platform.
11 - add to pts(a.panic) a label representing all runtime panics, e.g.
12   runtime.{TypeAssertionError,errorString,errorCString}.
13
14 OPTIMISATIONS
15 - pre-solver: 
16   pointer equivalence: extend HVN to HRU
17   location equivalence
18 - solver: HCD, LCD.
19 - experiment with map+slice worklist in lieu of bitset.
20   It may have faster insert.
21
22 MISC:
23 - Test on all platforms.  
24   Currently we assume these go/build tags: linux, amd64, !cgo.
25
26 MAINTAINABILITY
27 - Think about ways to make debugging this code easier.  PTA logs
28   routinely exceed a million lines and require training to read.
29
30 BUGS: 
31 - There's a crash bug in stdlib_test + reflection, rVCallConstraint.
32
33