Commit 93a3e31
Fix infinite loop (#244)
closes insightsengineering/teal#1474
Problem happens when two or more symbols occur in the same time on rhs
and lhs. Due to this, `l` depends on `class` and `class` depends on `l`.
```r
code <- "l <- list(a = 1, b = 2)
class(l) <- c('new class', class(l))" # l depends on class and class depends on l
q <- eval_code(qenv(), code)
get_code(q, names = "l")
```
@donyunardi This was a serious bug and will require a new release. We
can wait a little to the day when `teal` is going to be submitted to
CRAN.
---------
Signed-off-by: Dawid Kałędkowski <dawid.kaledkowski@gmail.com>
Co-authored-by: Aleksander Chlebowski <114988527+chlebowa@users.noreply.github.com>1 parent da5976a commit 93a3e31
3 files changed
Lines changed: 21 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
3 | 7 | | |
4 | 8 | | |
5 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
364 | 364 | | |
365 | 365 | | |
366 | 366 | | |
| 367 | + | |
367 | 368 | | |
368 | 369 | | |
369 | 370 | | |
| |||
372 | 373 | | |
373 | 374 | | |
374 | 375 | | |
| 376 | + | |
375 | 377 | | |
376 | 378 | | |
377 | 379 | | |
378 | 380 | | |
379 | 381 | | |
380 | 382 | | |
381 | | - | |
382 | | - | |
383 | | - | |
384 | | - | |
385 | | - | |
386 | | - | |
387 | | - | |
388 | | - | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
389 | 391 | | |
390 | 392 | | |
391 | 393 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
951 | 951 | | |
952 | 952 | | |
953 | 953 | | |
| 954 | + | |
| 955 | + | |
| 956 | + | |
| 957 | + | |
| 958 | + | |
| 959 | + | |
| 960 | + | |
0 commit comments