Skip to content

Commit 1fbf3cf

Browse files
committed
[GR-59866] Make Thread::{Queue,SizedQueue}#freeze raise TypeError (#3730)
PullRequest: truffleruby/4415
2 parents b1fa560 + d1407ea commit 1fbf3cf

File tree

4 files changed

+10
-2
lines changed

4 files changed

+10
-2
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ Compatibility:
3232
* Support serializing of `Data` instances into Marshal format (#3726, @andrykonchin).
3333
* `Array#pack` now raises `ArgumentError` for unknown directives (#3681, @Th3-M4jor).
3434
* `String#unpack` now raises `ArgumentError` for unknown directives (#3681, @Th3-M4jor).
35+
* `Thread::Queue#freeze` now raises `TypeError` when called (#3681, @Th3-M4jor).
36+
* `Thread::SizedQueue#freeze` now raises `TypeError` when called (#3681, @Th3-M4jor).
3537

3638
Performance:
3739

lib/truffle/thread.rb

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,10 @@ def pop(non_block = false, timeout: nil)
4141
end
4242
alias_method :shift, :pop
4343
alias_method :deq, :pop
44+
45+
def freeze
46+
raise TypeError, "cannot freeze #{self}"
47+
end
4448
end
4549

4650
class SizedQueue
@@ -62,5 +66,9 @@ def push(value, non_block = false, timeout: nil)
6266
end
6367
alias_method :<<, :push
6468
alias_method :enq, :push
69+
70+
def freeze
71+
raise TypeError, "cannot freeze #{self}"
72+
end
6573
end
6674
end

spec/tags/core/queue/freeze_tags.txt

Lines changed: 0 additions & 1 deletion
This file was deleted.

spec/tags/core/sizedqueue/freeze_tags.txt

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)