summaryrefslogtreecommitdiff
path: root/include/ruby/internal
diff options
context:
space:
mode:
Diffstat (limited to 'include/ruby/internal')
-rw-r--r--include/ruby/internal/fl_type.h3
-rw-r--r--include/ruby/internal/intern/error.h1
2 files changed, 3 insertions, 1 deletions
diff --git a/include/ruby/internal/fl_type.h b/include/ruby/internal/fl_type.h
index 16e0dfe139..eb212db7dc 100644
--- a/include/ruby/internal/fl_type.h
+++ b/include/ruby/internal/fl_type.h
@@ -916,6 +916,9 @@ static inline void
RB_OBJ_FREEZE_RAW(VALUE obj)
{
RB_FL_SET_RAW(obj, RUBY_FL_FREEZE);
+ if (TYPE(obj) == T_STRING) {
+ RB_FL_UNSET_RAW(obj, FL_USER3); // STR_CHILLED
+ }
}
RUBY_SYMBOL_EXPORT_BEGIN
diff --git a/include/ruby/internal/intern/error.h b/include/ruby/internal/intern/error.h
index bf8daadd3e..11e147a121 100644
--- a/include/ruby/internal/intern/error.h
+++ b/include/ruby/internal/intern/error.h
@@ -190,7 +190,6 @@ RBIMPL_ATTR_NONNULL(())
*/
void rb_error_frozen(const char *what);
-RBIMPL_ATTR_NORETURN()
/**
* Identical to rb_error_frozen(), except it takes arbitrary Ruby object
* instead of C's string.