\u001b[6;4H3 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m\u001b[7;4H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m\u001b(B\u001b[39;49m\u001b[37m\u001b[40m4 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mbool\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m is_alpha(\u001b[32m\u001b[40mchar\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m c) {\u001b[8;4H5 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mif\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m ((c >= \u001b[31m\u001b[40m'a'\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m && c <= \u001b[31m\u001b[40m'z'\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m) || (c >= \u001b[31m\u001b[40m'A'\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m && c <= \u001b[31m\u001b[40m'Z'\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m))\u001b[9;4H6 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mreturn\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mtrue\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m;\u001b[10;4H7 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mreturn\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mfalse\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m;\u001b[11;4H8 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m }\u001b[12;4H9 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m\u001b[13;3H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40"]
178 | [15.874982, "o", "m\u001b(B\u001b[39;49m\u001b[37m\u001b[40m10 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m size_t ft_strlen(\u001b[32m\u001b[40mchar\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m *str) {\u001b[14;3H11 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m size_t len = \u001b[31m\u001b[40m0\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m;\u001b[15;3H"]
179 | [15.874994, "o", "12 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mfor\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m (; str[len]; ++len);\u001b[16;3H"]
180 | [15.875067, "o", "13 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mreturn\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m len;\u001b[17;3H14 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m }\u001b[18;3H"]
181 | [15.875265, "o", "15 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m\u001b[19;3H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m\u001b(B\u001b[39;49m\u001b[37m\u001b[40m16 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mint\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m main(\u001b[32m\u001b[40mint\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m argc, \u001b[32m\u001b[40mchar\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m **argv) {\u001b[20;3H17 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m size_t len;\u001b[21;3H18 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mint\u001b[21;25H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40mi;\u001b[22;3H19 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m\u001b[23;2H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m\u001b(B\u001b[0m\u001b[30m\u001b[47m 20 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mif\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m (argc == \u001b[31m\u001b[40m2\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m) {\u001b[24;3H21 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx`\u001b(B\u001b[0m\u001b[37m\u001b[44m len = ft_strlen(argv[\u001b[31m\u001b[44m1\u001b[37m\u001b[44m]);\u001b[30m\u001b[44m\u001b[59X\u001b[24;96H\u001b[37m\u001b[44m <<< Thread 1: step over\u001b[25;3H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m22 \u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m i = \u001b[31m\u001b[40m0\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m;\u001b[26;3H23 \u001b(0\u001b[0m\u001b[39;49m\u001b["]
182 | [15.875307, "o", "37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m \u001b[32m\u001b[40mchar\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m str[len + \u001b[31m\u001b[40m1\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m];\u001b[29;3H(int) argc = 2\u001b[30;3H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m`q\u001b(B\u001b[39;49m\u001b[37m\u001b[40m(char **) argv = 0x00007fffffffc318\u001b[31;3H(size_t) len = 0\u001b[32;3H(int) i = 0\u001b[33;3H(long unsigned int) __vla_expr0 = 0\u001b[34;3H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m`q\u001b(B\u001b[39;49m\u001b[37m\u001b[40m(char []) str\u001b[2;56H\u001b[H"]
183 | [16.776925, "o", "\u001b[24;37H\u001b[83X\u001b[40;19H\u001b[30m\u001b[47mrunning\u001b[K\u001b[2;56H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m\u001b[H"]
184 | [16.878233, "o", "\u001b[29;38r\u001b[38;1H\n\u001b[1;40r\u001b[3;14H\u001b(B\u001b[0;7m\u001b[39;49m\u001b[37m\u001b[40mft_strlen\u001b[5;137H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40mft_strlen + 8\u001b[6;137Hmain + 58 \u001b[7;139H_lldb_unnam\u001b[8;125H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mt\u001b(B\u001b[39;49m\u001b[37m\u001b[40m\u001b[8;138H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m\u001b(B\u001b[39;49m\u001b[37m\u001b[40m_libc_start_\u001b[9;125H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mmq\u001b(B\u001b[39;49m\u001b[37m\u001b[40mframe #4: _start + 37\u001b[14;7H"]
185 | [16.878981, "o", "\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m`\u001b(B\u001b[0m\u001b[37m\u001b[44m size_t len = \u001b[31m\u001b[44m0\u001b[37m\u001b[44m;\u001b[30m\u001b[44m\u001b[73X\u001b[14;98H\u001b[37m\u001b[44m <<< Thread 1: step in\u001b[24;7H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m len = ft_strlen(argv[\u001b[31m\u001b[40m1\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m]);\u001b[29;12H) str = 0x00007fffffffc6d0 \"hell0\"\u001b[31;3H \u001b[32;3H\u001b[35X\u001b[33d\u001b[15X\r\u001b[38d\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m\u001b[38;120H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mxx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m\u001b[150G\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mx\u001b(B\u001b[39;49m\u001b[37m\u001b[40m\u001b[40;19H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m\u001b(B\u001b[0m\u001b[30m\u001b[47mstopped\u001b[40;41HThread: 45682\u001b[61GFrame: 0 PC = 0x00005555555551b8\u001b[2;56H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m\u001b[H"]
186 | [17.795689, "o", "\u001b[14;25H\u001b[95X\u001b[40;19H"]
187 | [17.795731, "o", "\u001b[30m\u001b[47mrunning\u001b[K\u001b[2;56H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m"]
188 | [17.795907, "o", "\u001b[H"]
189 | [17.896746, "o", "\u001b[5;149H1\u001b[14;7H size_t len = \u001b[31m\u001b[40m0\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m;\u001b[15;7H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m`\u001b(B\u001b[0m\u001b[37m\u001b[44m \u001b[32m\u001b[44mfor\u001b[37m\u001b[44m (; str[len]; ++len); \u001b[30m\u001b[44m\u001b[61X\u001b[15;96H\u001b[37m\u001b[44m <<< Thread 1: step over\u001b[40;19H\u001b[30m\u001b[47mstopped\u001b[40;41HThread: 45682\u001b[61GFrame: 0 PC = 0x00005555555551c0\u001b[2;56H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m\u001b[H"]
190 | [18.812019, "o", "\u001b[15;35H"]
191 | [18.812145, "o", "\u001b[85X\u001b[40;19H\u001b[30m\u001b[47mrunning\u001b[K\u001b[2;56H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m\u001b[H"]
192 | [18.913124, "o", "\u001b[5;149H5\u001b[15;7H \u001b[32m\u001b[40mfor\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m (; str[len]; ++len); \u001b[16;7H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m`\u001b(B\u001b[0m\u001b[37m\u001b[44m \u001b[32m\u001b[44mreturn\u001b[37m\u001b[44m len;\u001b[30m\u001b[44m\u001b[75X\u001b[16;96H\u001b[37m\u001b[44m <<< Thread 1: step over\u001b[30;18H"]
193 | [18.913248, "o", "\u001b(B\u001b[0;1m\u001b[31m\u001b[40m5\u001b[40;19H\u001b(B\u001b[0m\u001b[30m\u001b[47mstopped\u001b[40;41HThread: 45682\u001b[61GFrame: 0 PC = 0x00005555555551e8\u001b[2;56H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m\u001b[H"]
194 | [19.829182, "o", "\u001b[16;21H\u001b[99X\u001b[40;19H\u001b[30m\u001b[47mrunning\u001b[K\u001b[2;56H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m\u001b[H"]
195 | [19.930398, "o", "\u001b[3;14H\u001b(B\u001b[0;7m\u001b[39;49m\u001b[37m\u001b[40mmain \u001b[5;137H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40mmain + 58 \u001b[6;137H___lldb_unnam\u001b[7;139Hlibc_start_\u001b[8;125H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40mm\u001b(B\u001b[39;49m\u001b[37m\u001b[40m\u001b[8;138H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m\u001b(B\u001b[39;49m\u001b[37m\u001b[40mstart + 37 \u001b[9;125H\u001b[23X\u001b[16;7H"]
196 | [19.931009, "o", " \u001b[32m\u001b[40mreturn\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m len;\u001b[24;7H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m`\u001b(B\u001b[0m\u001b[37m\u001b[44m len = ft_strlen(argv[\u001b[31m\u001b[44m1\u001b[37m\u001b[44m]);\u001b[30m\u001b[44m\u001b[59X\u001b[24;96H\u001b[37m\u001b[44m <<< Thread 1: step over\u001b[29;3H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m(int) argc = 2\u001b[29X\u001b[30;3H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m`q\u001b(B\u001b[39;49m\u001b[37m\u001b[40m(char **) argv = 0x00007fffffffc318\u001b[31;3H(size_t) len = 0\u001b[32;3H(int) i = 0\u001b[33;3H(long unsigned int) __vla_expr0 = 0\u001b[34;3H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m`q\u001b(B\u001b[39;49m\u001b[37m\u001b[40m(char []) str\u001b[40;19H"]
197 | [19.931074, "o", "\u001b[30m\u001b[47mstopped\u001b[40;41HThread: 45682\u001b[61GFrame: 0 PC = 0x000055555555522a\u001b[2;56H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m\u001b[H"]
198 | [20.846452, "o", "\u001b[24;37H"]
199 | [20.846722, "o", "\u001b[83X\u001b[40;19H\u001b[30m\u001b[47mrunning\u001b[K\u001b[2;56H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m\u001b[H"]
200 | [20.948197, "o", "\u001b[5;144H62\u001b[24;7H len = ft_strlen(argv[\u001b[31m\u001b[40m1\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m]);\u001b[25;7H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m`\u001b(B\u001b[0m\u001b[37m\u001b[44m i = \u001b[31m\u001b[44m0\u001b[37m\u001b[44m;\u001b[30m\u001b[44m\u001b[78X\u001b[25;96H"]
201 | [20.948279, "o", "\u001b[37m\u001b[44m <<< Thread 1: step over\u001b[31;18H\u001b(B\u001b[0;1m\u001b[31m\u001b[40m5\u001b[40;19H\u001b(B\u001b[0m\u001b[30m\u001b[47mstopped\u001b[40;41HThread: 45682\u001b[61GFrame: 0 PC = 0x000055555555522e\u001b[2;56H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m\u001b[H"]
202 | [21.863624, "o", "\u001b[25;18H\u001b[102X\u001b[40;19H\u001b[30m\u001b[47mrunning\u001b[K\u001b[2;56H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m"]
203 | [21.863663, "o", "\u001b[H"]
204 | [21.964874, "o", "\u001b[5;145H9\u001b[25;7H i = \u001b[31m\u001b[40m0\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m;\u001b[26;7H\u001b(0\u001b[0m\u001b[39;49m\u001b[37m\u001b[40m`\u001b(B\u001b[0m\u001b[37m\u001b[44m \u001b[32m\u001b[44mchar\u001b[37m\u001b[44m str[len + \u001b[31m\u001b[44m1\u001b[37m\u001b[44m];\u001b[30m\u001b[44m\u001b[66X\u001b[26;96H\u001b[37m\u001b[44m <<< Thread 1: step over\u001b[31;18H\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m5\u001b[40;19H\u001b[30m\u001b[47mstopped\u001b[40;41HThread: 45682\u001b[61GFrame: 0 PC = 0x0000555555555235\u001b[2;56H"]
205 | [21.965002, "o", "\u001b(B\u001b[m\u001b[39;49m\u001b[37m\u001b[40m\u001b[H"]
206 | [23.880886, "o", "\u001b[39;49m\u001b[40d\u001b[K\u001b[40;1H\u001b[?12l\u001b[?25h\u001b[?1049l\u001b[23;0;0t\r\u001b[?1l\u001b>"]
207 | [23.881231, "o", "(lldb)"]
208 | [23.881257, "o", " \u001b[1G"]
209 | [23.881268, "o", "\u001b[2m(lldb) \u001b[0m"]
210 | [23.881359, "o", "\u001b[8G"]
211 | [23.911193, "o", "c"]
212 | [23.949732, "o", "o"]
213 | [24.000667, "o", "n"]
214 | [24.051568, "o", "t"]
215 | [24.102296, "o", "i"]
216 | [24.152921, "o", "n"]
217 | [24.20373, "o", "u"]
218 | [24.254833, "o", "e"]
219 | [24.309179, "o", "\r\n"]
220 | [24.309542, "o", "Process 45682 resuming"]
221 | [24.31005, "o", "\r\nhell\r\r\nProcess 45682 exited with status = 0 (0x00000000) \r\n"]
222 | [24.310141, "o", "(l"]
223 | [24.310226, "o", "ldb) "]
224 | [24.310299, "o", "\u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
225 | [25.327146, "o", "q"]
226 | [25.378086, "o", "u"]
227 | [25.428933, "o", "i"]
228 | [25.47985, "o", "t"]
229 | [25.532891, "o", "\r\n"]
230 |
--------------------------------------------------------------------------------
/static/ascii/lldb_process_args.cast:
--------------------------------------------------------------------------------
1 | {"version": 2, "width": 150, "height": 40, "timestamp": 1656159250, "env": {"SHELL": "/usr/bin/zsh", "TERM": "alacritty"}}
2 | [0.014876, "o", "\u001b[?2004h$ "]
3 | [0.892754, "o", "l"]
4 | [0.994826, "o", "l"]
5 | [1.095497, "o", "d"]
6 | [1.196351, "o", "b"]
7 | [1.29751, "o", " "]
8 | [1.398684, "o", "-"]
9 | [1.499312, "o", "-"]
10 | [1.599983, "o", " "]
11 | [1.700793, "o", "m"]
12 | [1.801613, "o", "y"]
13 | [1.903089, "o", "_"]
14 | [2.004101, "o", "p"]
15 | [2.104734, "o", "r"]
16 | [2.205735, "o", "o"]
17 | [2.306388, "o", "g"]
18 | [2.407926, "o", "r"]
19 | [2.509118, "o", "a"]
20 | [2.609923, "o", "m"]
21 | [2.7116, "o", " "]
22 | [2.813021, "o", "'"]
23 | [2.91345, "o", "h"]
24 | [3.014794, "o", "e"]
25 | [3.115775, "o", "l"]
26 | [3.216748, "o", "l"]
27 | [3.31785, "o", "0"]
28 | [3.41882, "o", " "]
29 | [3.519546, "o", "w"]
30 | [3.620267, "o", "0"]
31 | [3.721295, "o", "r"]
32 | [3.822205, "o", "l"]
33 | [3.923224, "o", "d"]
34 | [4.023945, "o", "'"]
35 | [4.127775, "o", "\r\n"]
36 | [4.127892, "o", "\u001b[?2004l\r"]
37 | [4.150722, "o", "(lldb) target create \"my_program\"\r\n"]
38 | [4.152803, "o", "Current executable set to '/home/seb/tmp/ex/my_program' (x86_64).\r\n(lldb) settings set -- target.run-args \"hell0 w0rld\"\r\n"]
39 | [4.155264, "o", "(lldb) "]
40 | [4.155332, "o", "\u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
41 | [5.149321, "o", "p"]
42 | [5.250154, "o", "r"]
43 | [5.351319, "o", "o"]
44 | [5.4523, "o", "c"]
45 | [5.552991, "o", "e"]
46 | [5.654597, "o", "s"]
47 | [5.755373, "o", "s"]
48 | [5.856295, "o", " "]
49 | [5.957316, "o", "l"]
50 | [6.058302, "o", "a"]
51 | [6.159238, "o", "u"]
52 | [6.260159, "o", "n"]
53 | [6.361246, "o", "c"]
54 | [6.462271, "o", "h"]
55 | [6.56743, "o", "\r\n"]
56 | [6.595404, "o", "Process 48384 launched: '/home/seb/tmp/ex/my_program' (x86_64)\r\n"]
57 | [6.606763, "o", "hellwrld\r\r\n"]
58 | [6.606986, "o", "Process 48384 exited with status = 0 (0x00000000) \r\n"]
59 | [6.607107, "o", "(lldb) \u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
60 | [7.586171, "o", "q"]
61 | [7.637066, "o", "u"]
62 | [7.687754, "o", "i"]
63 | [7.738662, "o", "t"]
64 | [7.791928, "o", "\r\n"]
65 |
--------------------------------------------------------------------------------
/static/ascii/lldb_process_start.cast:
--------------------------------------------------------------------------------
1 | {"version": 2, "width": 150, "height": 40, "timestamp": 1656159180, "env": {"SHELL": "/usr/bin/zsh", "TERM": "alacritty"}}
2 | [0.015197, "o", "\u001b[?2004h$ "]
3 | [0.890423, "o", "l"]
4 | [0.992186, "o", "l"]
5 | [1.092925, "o", "d"]
6 | [1.193978, "o", "b"]
7 | [1.297295, "o", "\r\n"]
8 | [1.297463, "o", "\u001b[?2004l\r"]
9 | [1.322659, "o", "(lldb) \u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
10 | [2.31559, "o", "t"]
11 | [2.416253, "o", "a"]
12 | [2.517442, "o", "r"]
13 | [2.618391, "o", "g"]
14 | [2.719494, "o", "e"]
15 | [2.820257, "o", "t"]
16 | [2.921241, "o", " "]
17 | [3.021995, "o", "c"]
18 | [3.12302, "o", "r"]
19 | [3.223727, "o", "e"]
20 | [3.325204, "o", "a"]
21 | [3.426698, "o", "t"]
22 | [3.527878, "o", "e"]
23 | [3.628737, "o", " "]
24 | [3.729703, "o", "m"]
25 | [3.830215, "o", "y"]
26 | [3.931962, "o", "_"]
27 | [4.032906, "o", "p"]
28 | [4.134036, "o", "r"]
29 | [4.235061, "o", "o"]
30 | [4.33572, "o", "g"]
31 | [4.436359, "o", "r"]
32 | [4.537023, "o", "a"]
33 | [4.637782, "o", "m"]
34 | [4.742741, "o", "\r\n"]
35 | [4.745441, "o", "Current executable set to '/home/seb/tmp/ex/my_program' (x86_64).\r\n(lldb) \u001b[1G"]
36 | [4.745603, "o", "\u001b[2m(lldb) \u001b[0m\u001b[8G"]
37 | [5.762069, "o", "s"]
38 | [5.863225, "o", "e"]
39 | [5.963865, "o", "t"]
40 | [6.064658, "o", "t"]
41 | [6.165857, "o", "i"]
42 | [6.266774, "o", "n"]
43 | [6.36762, "o", "g"]
44 | [6.468487, "o", "s"]
45 | [6.569397, "o", " "]
46 | [6.670148, "o", "s"]
47 | [6.771364, "o", "e"]
48 | [6.872633, "o", "t"]
49 | [6.97361, "o", " "]
50 | [7.074394, "o", "-"]
51 | [7.175908, "o", "-"]
52 | [7.276799, "o", " "]
53 | [7.377811, "o", "t"]
54 | [7.478514, "o", "a"]
55 | [7.579694, "o", "r"]
56 | [7.680901, "o", "g"]
57 | [7.782, "o", "e"]
58 | [7.882667, "o", "t"]
59 | [7.983666, "o", "."]
60 | [8.084312, "o", "r"]
61 | [8.185079, "o", "u"]
62 | [8.285908, "o", "n"]
63 | [8.386566, "o", "-"]
64 | [8.487265, "o", "a"]
65 | [8.588082, "o", "r"]
66 | [8.689, "o", "g"]
67 | [8.789793, "o", "s"]
68 | [8.890457, "o", " "]
69 | [8.991076, "o", "'"]
70 | [9.091905, "o", "h"]
71 | [9.192783, "o", "e"]
72 | [9.293518, "o", "l"]
73 | [9.394871, "o", "l"]
74 | [9.495833, "o", "0"]
75 | [9.596864, "o", " "]
76 | [9.69833, "o", "w"]
77 | [9.799021, "o", "0"]
78 | [9.899575, "o", "r"]
79 | [10.000332, "o", "l"]
80 | [10.101035, "o", "d"]
81 | [10.20193, "o", "'"]
82 | [10.3055, "o", "\r\n"]
83 | [10.3057, "o", "(l"]
84 | [10.305762, "o", "ldb) "]
85 | [10.305808, "o", "\u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
86 | [11.326399, "o", "p"]
87 | [11.427549, "o", "r"]
88 | [11.5293, "o", "o"]
89 | [11.63027, "o", "c"]
90 | [11.73122, "o", "e"]
91 | [11.8321, "o", "s"]
92 | [11.933698, "o", "s"]
93 | [12.034546, "o", " "]
94 | [12.135712, "o", "l"]
95 | [12.236601, "o", "a"]
96 | [12.337239, "o", "u"]
97 | [12.438576, "o", "n"]
98 | [12.53932, "o", "c"]
99 | [12.639857, "o", "h"]
100 | [12.742916, "o", "\r\n"]
101 | [12.773041, "o", "Process 47731 launched: '/home/seb/tmp/ex/my_program' (x86_64)\r\n"]
102 | [12.78404, "o", "hellwrld\r\r\n"]
103 | [12.785094, "o", "Process 47731 exited with status = 0 (0x00000000) \r\n"]
104 | [12.785241, "o", "(lldb) \u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
105 | [13.762036, "o", "q"]
106 | [13.813119, "o", "u"]
107 | [13.863747, "o", "i"]
108 | [13.914422, "o", "t"]
109 | [13.968603, "o", "\r\n"]
110 |
--------------------------------------------------------------------------------
/static/ascii/lldb_watchpoints.cast:
--------------------------------------------------------------------------------
1 | {"version": 2, "width": 150, "height": 40, "timestamp": 1656407013, "env": {"SHELL": "/usr/bin/zsh", "TERM": "alacritty"}}
2 | [0.01488, "o", "\u001b[?2004h$ "]
3 | [0.914516, "o", "l"]
4 | [0.965772, "o", "l"]
5 | [1.016435, "o", "d"]
6 | [1.068024, "o", "b"]
7 | [1.119021, "o", " "]
8 | [1.170004, "o", "m"]
9 | [1.221373, "o", "y"]
10 | [1.273231, "o", "_"]
11 | [1.325245, "o", "p"]
12 | [1.376265, "o", "r"]
13 | [1.427218, "o", "o"]
14 | [1.478246, "o", "g"]
15 | [1.529518, "o", "r"]
16 | [1.581098, "o", "a"]
17 | [1.631659, "o", "m"]
18 | [2.688616, "o", "\r\n"]
19 | [2.688801, "o", "\u001b[?2004l\r"]
20 | [2.710985, "o", "(lldb) target create \"my_program\"\r\n"]
21 | [2.712426, "o", "Current executable set to '/home/seb/tmp/ex/my_program' (x86_64).\r\n"]
22 | [2.715033, "o", "(lldb) "]
23 | [2.715152, "o", "\u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
24 | [3.708182, "o", "b"]
25 | [3.758869, "o", " "]
26 | [3.809904, "o", "m"]
27 | [3.861246, "o", "a"]
28 | [3.912508, "o", "i"]
29 | [3.963382, "o", "n"]
30 | [5.019998, "o", "\r\n"]
31 | [5.020686, "o", "Breakpoint 1: where = my_program`main + 15 at watch.c:12:3, address = 0x000000000000114f\r\n(lldb) "]
32 | [5.020902, "o", "\u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
33 | [6.041824, "o", "r"]
34 | [6.093196, "o", "u"]
35 | [6.144407, "o", "n"]
36 | [7.200096, "o", "\r\n"]
37 | [7.226687, "o", "Process 26673 launched: '/home/seb/tmp/ex/my_program' (x86_64)\r\n"]
38 | [7.238077, "o", "Process 26673 stopped\r\n* thread #1, name = 'my_program', stop reason = \u001b[31mbreakpoint 1.1\u001b[0m\r\n frame #0: \u001b[33m0x000055555555514f\u001b[0m my_program`main at \u001b[36mwatch.c\u001b[0m:\u001b[33m12\u001b[0m:\u001b[33m3\u001b[0m\r\n\u001b[33m \u001b[0m 9 \t\r\n\u001b[33m \u001b[0m 10 \t\u001b[32mint\u001b[0m main(\u001b[32mvoid\u001b[0m)\r\n\u001b[33m \u001b[0m 11 \t{\r\n\u001b[33m->\u001b[0m 12 \t \u001b[4mfunc\u001b[0m();\r\n\u001b[33m \u001b[0m 13 \t \u001b[32mif\u001b[0m (g_write == \u001b[31m1\u001b[0m)\r\n\u001b[33m \u001b[0m 14 \t g_read = \u001b[31m1\u001b[0m;\r\n\u001b[33m \u001b[0m 15 \t}\r\n"]
39 | [7.2382, "o", "(lldb) \u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
40 | [8.21913, "o", "f"]
41 | [8.27018, "o", "r"]
42 | [8.321434, "o", "a"]
43 | [8.372608, "o", "m"]
44 | [8.424191, "o", "e"]
45 | [8.475455, "o", " "]
46 | [8.526525, "o", "v"]
47 | [8.57755, "o", "a"]
48 | [8.629208, "o", "r"]
49 | [8.680329, "o", "i"]
50 | [8.731313, "o", "a"]
51 | [8.782737, "o", "b"]
52 | [8.833663, "o", "l"]
53 | [8.884888, "o", "e"]
54 | [8.935551, "o", " "]
55 | [8.9863, "o", "-"]
56 | [9.037335, "o", "-"]
57 | [9.088696, "o", "s"]
58 | [9.14, "o", "h"]
59 | [9.191195, "o", "o"]
60 | [9.242145, "o", "w"]
61 | [9.293141, "o", "-"]
62 | [9.344147, "o", "g"]
63 | [9.395477, "o", "l"]
64 | [9.447046, "o", "o"]
65 | [9.497681, "o", "b"]
66 | [9.549247, "o", "a"]
67 | [9.599916, "o", "l"]
68 | [9.650963, "o", "s"]
69 | [10.70718, "o", "\r\n"]
70 | [10.715587, "o", "(int) g_write = 0\r\n(int) g_read = 0\r\n(lldb) "]
71 | [10.71563, "o", "\u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
72 | [11.730011, "o", "w"]
73 | [11.781278, "o", "a"]
74 | [11.832631, "o", "t"]
75 | [11.883373, "o", "c"]
76 | [11.93412, "o", "h"]
77 | [11.984884, "o", "p"]
78 | [12.03592, "o", "o"]
79 | [12.086658, "o", "i"]
80 | [12.137639, "o", "n"]
81 | [12.189007, "o", "t"]
82 | [12.239907, "o", " "]
83 | [12.290844, "o", "s"]
84 | [12.342472, "o", "e"]
85 | [12.393367, "o", "t"]
86 | [12.444575, "o", " "]
87 | [12.495486, "o", "v"]
88 | [12.546584, "o", "a"]
89 | [12.597811, "o", "r"]
90 | [12.649109, "o", "i"]
91 | [12.700081, "o", "a"]
92 | [12.750956, "o", "b"]
93 | [12.801986, "o", "l"]
94 | [12.852802, "o", "e"]
95 | [12.903582, "o", " "]
96 | [12.95425, "o", "-"]
97 | [13.005774, "o", "-"]
98 | [13.056651, "o", "w"]
99 | [13.107529, "o", "a"]
100 | [13.159182, "o", "t"]
101 | [13.21062, "o", "c"]
102 | [13.262395, "o", "h"]
103 | [13.312999, "o", " "]
104 | [13.363759, "o", "w"]
105 | [13.414938, "o", "r"]
106 | [13.465896, "o", "i"]
107 | [13.516843, "o", "t"]
108 | [13.567847, "o", "e"]
109 | [13.619158, "o", " "]
110 | [13.670095, "o", "g"]
111 | [13.721565, "o", "_"]
112 | [13.773216, "o", "w"]
113 | [13.82411, "o", "r"]
114 | [13.875523, "o", "i"]
115 | [13.926832, "o", "t"]
116 | [13.978953, "o", "e"]
117 | [15.034662, "o", "\r\n"]
118 | [15.048295, "o", "Watchpoint created: Watchpoint 1: addr = 0x55555555802c size = 4 state = enabled type = w\r\n declare @ '/home/seb/tmp/ex/watch.c:1'\r\n watchpoint spec = 'g_write'\r\n new value: 0\r\n(lldb)"]
119 | [15.048475, "o", " \u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
120 | [16.054581, "o", "w"]
121 | [16.105486, "o", "a"]
122 | [16.156797, "o", "t"]
123 | [16.207677, "o", "c"]
124 | [16.259096, "o", "h"]
125 | [16.309857, "o", "p"]
126 | [16.361233, "o", "o"]
127 | [16.412866, "o", "i"]
128 | [16.464193, "o", "n"]
129 | [16.515624, "o", "t"]
130 | [16.56674, "o", " "]
131 | [16.617843, "o", "s"]
132 | [16.669003, "o", "e"]
133 | [16.719937, "o", "t"]
134 | [16.771003, "o", " "]
135 | [16.822505, "o", "e"]
136 | [16.873627, "o", "x"]
137 | [16.924471, "o", "p"]
138 | [16.9757, "o", "r"]
139 | [17.026855, "o", "e"]
140 | [17.078229, "o", "s"]
141 | [17.129423, "o", "s"]
142 | [17.180646, "o", "i"]
143 | [17.231907, "o", "o"]
144 | [17.282953, "o", "n"]
145 | [17.334002, "o", " "]
146 | [17.384979, "o", "-"]
147 | [17.436492, "o", "-"]
148 | [17.487711, "o", "w"]
149 | [17.539072, "o", "a"]
150 | [17.589835, "o", "t"]
151 | [17.640741, "o", "c"]
152 | [17.691883, "o", "h"]
153 | [17.743013, "o", " "]
154 | [17.793948, "o", "r"]
155 | [17.844936, "o", "e"]
156 | [17.896325, "o", "a"]
157 | [17.947484, "o", "d"]
158 | [17.998441, "o", " "]
159 | [18.049394, "o", "-"]
160 | [18.100314, "o", "-"]
161 | [18.151081, "o", "s"]
162 | [18.202605, "o", "i"]
163 | [18.253651, "o", "z"]
164 | [18.304769, "o", "e"]
165 | [18.356117, "o", " "]
166 | [18.407015, "o", "4"]
167 | [18.458857, "o", " "]
168 | [18.509824, "o", "-"]
169 | [18.560993, "o", "-"]
170 | [18.611632, "o", " "]
171 | [18.663432, "o", "&"]
172 | [18.715716, "o", "g"]
173 | [18.767319, "o", "_"]
174 | [18.819124, "o", "r"]
175 | [18.869917, "o", "e"]
176 | [18.920814, "o", "a"]
177 | [18.972292, "o", "d"]
178 | [20.028386, "o", "\r\n"]
179 | [20.036529, "o", "Watchpoint created: Watchpoint 2: addr = 0x555555558030 size = 4 state = enabled type = r\r\n new value: 0x0000000000000000\r\n(lld"]
180 | [20.036682, "o", "b) \u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
181 | [21.047437, "o", "c"]
182 | [21.098253, "o", "o"]
183 | [21.149345, "o", "n"]
184 | [21.200483, "o", "t"]
185 | [21.251569, "o", "i"]
186 | [21.302415, "o", "n"]
187 | [21.353457, "o", "u"]
188 | [21.404454, "o", "e"]
189 | [22.46005, "o", "\r\n"]
190 | [22.4604, "o", "Process 26673 resuming\r\n"]
191 | [22.462373, "o", "\r\nWatchpoint 2 hit:\r\nold value: 0x0000000000000000\r\nnew value: 0x0000000000000000\r\n"]
192 | [22.462657, "o", "Process 26673 stopped\r\n* thread #1, name = 'my_program', stop reason = \u001b[31mwatchpoint 2\u001b[0m\r\n frame #0: \u001b[33m0x000055555555512b\u001b[0m my_program`func at \u001b[36mwatch.c\u001b[0m:\u001b[33m6\u001b[0m:\u001b[33m7\u001b[0m\r\n\u001b[33m \u001b[0m 3 \t\r\n\u001b[33m \u001b[0m 4 \t\u001b[32mvoid\u001b[0m func(\u001b[32mvoid\u001b[0m)\r\n\u001b[33m \u001b[0m 5 \t{\r\n\u001b[33m->\u001b[0m 6 "]
193 | [22.46271, "o", "\t \u001b[32mif\u001b[0m (\u001b[4mg_read\u001b[0m == \u001b[31m0\u001b[0m)\r\n\u001b[33m \u001b[0m 7 \t g_write = \u001b[31m1\u001b[0m;\r\n\u001b[33m \u001b[0m 8 "]
194 | [22.46273, "o", "\t}\r\n\u001b[33m \u001b[0m 9 \t\r\n"]
195 | [22.462831, "o", "(lldb) \u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
196 | [23.481798, "o", "c"]
197 | [23.533245, "o", "o"]
198 | [23.584435, "o", "n"]
199 | [23.635244, "o", "t"]
200 | [23.686656, "o", "i"]
201 | [23.737829, "o", "n"]
202 | [23.789495, "o", "u"]
203 | [23.840587, "o", "e"]
204 | [24.896045, "o", "\r\n"]
205 | [24.89632, "o", "Process 26673 resuming\r\n"]
206 | [24.897268, "o", "\r\nWatchpoint 1 hit:\r\nold value: 0\r\nnew value: 1\r\n"]
207 | [24.897534, "o", "Process 26673 stopped\r\n* thread #1, name = 'my_program', stop reason = \u001b[31mwatchpoint 1\u001b[0m\r\n frame #0: \u001b[33m0x000055555555513b\u001b[0m my_program`func at \u001b[36mwatch.c\u001b[0m:\u001b[33m8\u001b[0m:\u001b[33m1\u001b[0m\r\n\u001b[33m \u001b[0m 5 \t{\r\n\u001b[33m \u001b[0m 6 \t \u001b[32mif\u001b[0m (g_read == \u001b[31m0\u001b[0m)\r\n\u001b[33m \u001b[0m 7 \t g_write = \u001b[31m1\u001b[0m;\r\n\u001b[33m->\u001b[0m 8 \t\u001b[4m}\u001b[0m\r\n\u001b[33m \u001b[0m 9 \t\r\n\u001b[33m \u001b[0m 10 \t\u001b[32mint\u001b[0m main(\u001b[32mvoid\u001b[0m)\r\n\u001b[33m \u001b[0m 11 \t{\r\n"]
208 | [24.897672, "o", "(lldb"]
209 | [24.897785, "o", ") \u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
210 | [25.918457, "o", "c"]
211 | [25.969737, "o", "o"]
212 | [26.021735, "o", "n"]
213 | [26.072919, "o", "t"]
214 | [26.123902, "o", "i"]
215 | [26.174798, "o", "n"]
216 | [26.22577, "o", "u"]
217 | [26.277166, "o", "e"]
218 | [27.332515, "o", "\r\n"]
219 | [27.332853, "o", "Process 26673 resuming\r\n"]
220 | [27.333378, "o", "\r\nWatchpoint 2 hit:\r\nold value: 0x0000000000000000\r\nnew value: 0x0000000000000001\r\n"]
221 | [27.333556, "o", "Process 26673 stopped\r\n* thread #1, name = 'my_program', stop reason = \u001b[31mwatchpoint 2\u001b[0m\r\n frame #0: \u001b[33m0x000055555555516b\u001b[0m my_program`main at \u001b[36mwatch.c\u001b[0m:\u001b[33m15\u001b[0m:\u001b[33m1\u001b[0m\r\n\u001b[33m \u001b[0m 12 \t func();\r\n\u001b[33m \u001b[0m 13 \t \u001b[32mif\u001b[0m (g_write == \u001b[31m1\u001b[0m)\r\n\u001b[33m \u001b[0m 14 \t g_read = \u001b[31m1\u001b[0m;\r\n\u001b[33m->\u001b[0m 15 \t\u001b[4m}\u001b[0m\r\n"]
222 | [27.333678, "o", "(lldb) \u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
223 | [28.351896, "o", "c"]
224 | [28.403155, "o", "o"]
225 | [28.454375, "o", "n"]
226 | [28.506444, "o", "t"]
227 | [28.557658, "o", "i"]
228 | [28.609045, "o", "n"]
229 | [28.660049, "o", "u"]
230 | [28.711243, "o", "e"]
231 | [29.767726, "o", "\r\n"]
232 | [29.767842, "o", "Process 26673 resuming\r\n"]
233 | [29.768204, "o", "Process 26673 exited with status = 0 (0x00000000) \r\n(lldb) \u001b[1G\u001b[2m(lldb) \u001b[0m\u001b[8G"]
234 | [30.79042, "o", "q"]
235 | [30.841521, "o", "u"]
236 | [30.893134, "o", "i"]
237 | [30.944061, "o", "t"]
238 | [31.999277, "o", "\r\n"]
239 |
--------------------------------------------------------------------------------
/static/img/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SebastienWae/debugging-42/5cbe230695374ed1f54f55b377d42136f2b802e1/static/img/favicon.ico
--------------------------------------------------------------------------------
/static/img/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SebastienWae/debugging-42/5cbe230695374ed1f54f55b377d42136f2b802e1/static/img/logo.png
--------------------------------------------------------------------------------
/static/img/logo.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/static/reports/codechecker/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Plist HTML Viewer
5 |
6 |
7 |
8 |
169 |
170 |
375 |
376 |
377 |
410 |
411 |
412 |
--------------------------------------------------------------------------------
/static/reports/codechecker/statistics.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Plist HTML Viewer
5 |
6 |
7 |
8 |
165 |
166 |
215 |
216 |
217 |
218 |
‹ Go To Bug List
219 |
220 |
Statistics
221 |
222 |
223 | Number of processed analyzer result files |
224 | 1 |
225 |
226 |
227 | Number of analyzer reports |
228 | 1 |
229 |
230 |
231 |
Checker statistics
232 |
233 |
234 | Checker name |
235 | Severity |
236 | Number of reports |
237 |
238 |
239 |
240 | core.DivideZero |
241 |
242 |
243 | |
244 | 1 |
245 |
246 |
247 |
248 |
Severity statistics
249 |
250 |
251 | Severity |
252 | Number of reports |
253 |
254 |
255 |
256 |
257 |
258 | |
259 | 1 |
260 |
261 |
262 |
263 |
264 |
265 |
266 |
--------------------------------------------------------------------------------
/static/reports/scan-build.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | bad_code.c
5 |
6 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 | Bug Summary
168 |
169 | File: | bad_code.c |
170 | Warning: | line 9, column 9 Use of memory after it is freed |
171 |
172 |
173 |
174 | Annotated Source Code
175 | Press '?'
176 | to see keyboard shortcuts
177 |
178 |
179 | clang -cc1 -cc1 -triple x86_64-pc-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name bad_code.c -analyzer-store=region -analyzer-opt-analyze-nested-blocks -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -setup-static-analyzer -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=all -fmath-errno -fno-rounding-math -mconstructor-aliases -munwind-tables -target-cpu x86-64 -tune-cpu generic -debugger-tuning=gdb -fcoverage-compilation-dir=/home/seb/tmp/ex -resource-dir /usr/lib/clang/13.0.1 -internal-isystem /usr/lib/clang/13.0.1/include -internal-isystem /usr/local/include -internal-isystem /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/12.1.0/../../../../x86_64-pc-linux-gnu/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdebug-compilation-dir=/home/seb/tmp/ex -ferror-limit 19 -stack-protector 2 -fgnuc-version=4.2.1 -analyzer-output=html -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/scan-build-2022-06-19-123501-29125-1 -x c bad_code.c
180 |
181 |
190 |
238 |
239 |
245 |
246 |
326 |
327 |
350 |
351 | 1 | #include <stdlib.h> |
352 | 2 | |
353 | 3 | struct link { struct link *next; }; |
354 | 4 | |
355 | 5 | void free_a_list_badly(struct link *n) |
356 | 6 | { |
357 | 7 | while (n) { |
358 | | 1 | Loop condition is true. Entering loop body | |
|
359 | 8 | free(n); |
360 | | |
361 | 9 | n = n->next; |
362 | | 3 | | Use of memory after it is freed |
|
363 | 10 | } |
364 | 11 | } |
365 |
366 |
--------------------------------------------------------------------------------
/static/screenshots/lldb_vscode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SebastienWae/debugging-42/5cbe230695374ed1f54f55b377d42136f2b802e1/static/screenshots/lldb_vscode.png
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "@tsconfig/docusaurus/tsconfig.json",
3 | "compilerOptions": {
4 | "baseUrl": "."
5 | }
6 | }
7 |
--------------------------------------------------------------------------------