Stone Tickle
67bcd658fe
run analyzer as part of tests
...
Two tests dealing with disablers are skipped. These tests do things
that would certainly be considered bugs in working builds, but they do
them for good disabler-testing reasons.
2022-04-18 13:29:35 -05:00
Stone Tickle
755c9b8072
remove broken stack overflow checking
2022-04-18 10:27:48 -05:00
Stone Tickle
9dc7789ccd
set foreach variable assignment node
2022-04-18 10:27:47 -05:00
Stone Tickle
2a3d3454fd
don't warn unused for _-prefixed vars
2022-04-18 10:27:47 -05:00
Stone Tickle
6581822a10
fix scope assignment for overwritten vars
2022-04-18 10:27:47 -05:00
Stone Tickle
9c19548981
collect diagnostics and sort them in the output
2022-04-18 10:27:47 -05:00
Stone Tickle
990d89c748
use analyze in muon ale linter
2022-04-18 10:27:47 -05:00
Stone Tickle
6f2c9c9b61
improve analyzer disabler handling
2022-04-18 10:27:47 -05:00
Stone Tickle
0fd64e6965
only print "in function x" error for subdir
2022-04-18 10:27:46 -05:00
Stone Tickle
73a4921abb
handle some analyze failures more gracefully
2022-04-18 10:27:46 -05:00
Stone Tickle
d6ad6365fe
add tc_disabler to tc_all
2022-04-18 10:27:46 -05:00
Stone Tickle
cecf889445
move obj_type_to_tc_type
2022-04-18 10:27:46 -05:00
Stone Tickle
bd7662956c
add interp_warning()
2022-04-18 10:27:46 -05:00
Stone Tickle
e6cf9f657a
fix pure dict addition
2022-04-18 10:27:46 -05:00
Stone Tickle
f7d1b119a4
fix return type for get_first_supported_[xx_]arg
2022-04-18 10:27:46 -05:00
Stone Tickle
aa0cb404dd
make pure not work in analyzer
2022-04-18 10:27:45 -05:00
Stone Tickle
b60e20a5ef
fix get_variable() function
2022-04-18 10:27:45 -05:00
Stone Tickle
829acba120
make analyze a proper subcommand
2022-04-18 10:27:45 -05:00
Stone Tickle
a3afe42beb
handle pure foreach loop
2022-04-18 10:27:45 -05:00
Stone Tickle
15bfc89316
use tc_any for undefined variables
2022-04-18 10:27:45 -05:00
Stone Tickle
1fc8da34ce
enable pure arithmetic
2022-04-18 10:27:45 -05:00
Stone Tickle
26e1101923
improve pure function handling / var assignment
2022-04-18 10:27:44 -05:00
Stone Tickle
aa03cad5c4
take filename into account
2022-04-18 10:27:44 -05:00
Stone Tickle
b5504caa50
implement analyze stringify op
2022-04-18 10:27:44 -05:00
Stone Tickle
4c78b4156e
handle kwargs keyword as typeinfo
2022-04-18 10:27:44 -05:00
Stone Tickle
e5ea264263
implement foreach in analyzer
2022-04-18 10:27:44 -05:00
Stone Tickle
1a73e194b7
warn when assigning to null
2022-04-18 10:27:44 -05:00
Stone Tickle
63b80b2d05
fix typechecking with ARG_TYPE_ARRAY_OF
2022-04-18 10:27:43 -05:00
Stone Tickle
3b0ff56282
add tc_disabler
2022-04-18 10:27:43 -05:00
Stone Tickle
7eeb327f1f
call pure functions with known arguments
2022-04-18 10:27:43 -05:00
Stone Tickle
c14ab27af5
annotate module func return types
2022-04-18 10:27:43 -05:00
Stone Tickle
2ffe3b8875
fix return type for substring
2022-04-18 10:27:43 -05:00
Stone Tickle
cccefc39e1
dont yield typeinfo arrays in foreach flat
2022-04-18 10:27:43 -05:00
Stone Tickle
60080479c5
implement scoped assignment tracking
2022-04-18 10:27:42 -05:00
Stone Tickle
47eab94bab
remove debug message
2022-04-18 10:27:42 -05:00
Stone Tickle
12921b9436
add UNREACHABLE and UNREACHABLE_RETURN macro
2022-04-18 10:27:42 -05:00
Stone Tickle
3004ac2b10
add if subtype to differentiate if and else if
2022-04-18 10:27:42 -05:00
Stone Tickle
cf23baf867
fix realloc bug
2022-04-18 10:27:42 -05:00
Stone Tickle
d9a1e69adc
implement basic analyzer
2022-04-18 10:27:42 -05:00
Stone Tickle
200d0034a2
implement typechecking for obj_typeinfo
2022-04-18 10:27:42 -05:00
Stone Tickle
464abe831a
annotate return type of all functions
2022-04-18 10:27:38 -05:00
Stone Tickle
3227217b6a
add tc_any
2022-04-18 10:26:02 -05:00
Stone Tickle
077511c916
improve source location of some parse nodes
2022-04-18 10:25:36 -05:00
Stone Tickle
b0a78d27c8
stub analyze.c
2022-04-18 10:25:36 -05:00
illiliti
e826732029
support gnu_symbol_visibility kwarg
2022-04-18 10:24:01 -05:00
illiliti
291ebbec85
mark 178 bothlibraries test as passing
2022-04-18 10:18:41 -05:00
illiliti
c5e8172f8d
implement -Ddefault_library=both
2022-04-18 10:18:32 -05:00
illiliti
57dcf96476
support obj_both_libs everywhere
2022-04-18 10:18:08 -05:00
illiliti
fd3d6bf731
implement both_libraries.extract_all_objects()
2022-04-18 10:16:40 -05:00
illiliti
5d2ee25d24
implement both_libraries.extract_objects()
2022-04-18 10:16:39 -05:00