1475 Commits

Author SHA1 Message Date
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