[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
#1797: checked inline procedures should not call intern
From: |
Chicken Trac |
Subject: |
#1797: checked inline procedures should not call intern |
Date: |
Tue, 08 Feb 2022 12:23:32 -0000 |
#1797: checked inline procedures should not call intern
--------------------------------+----------------------------
Reporter: sjamaan | Type: defect
Status: new | Priority: major
Milestone: 5.4 | Component: core libraries
Version: 5.3.0 | Keywords:
Estimated difficulty: easy |
--------------------------------+----------------------------
As found by Felix, inline safe procedures like `C_i_char_equalp` call
`C_i_check_char_2` which requires a call to `intern0` to provide error
reporting, sometimes more than once, even when there's no error.
This is highly inefficient and should be done differently. A quick fix
would be to pass `C_SCHEME_FALSE` (or use the non-`_2` version like
`C_i_check_char`) but perhaps it's better to have C versions of the
checking predicates that can call intern0 on a C string in case of error.
--
Ticket URL: <https://bugs.call-cc.org/ticket/1797>
CHICKEN Scheme <https://www.call-cc.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- #1797: checked inline procedures should not call intern,
Chicken Trac <=