From: usa@... Date: 2014-07-02T07:46:35+00:00 Subject: [ruby-dev:48366] [ruby-trunk - Bug #9865] frozen IO object causes RuntimeError with inspect and fileno Issue #9865 has been updated by Usaku NAKAMURA. Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN to 2.0.0: REQUIRED, 2.1: REQUIRED ---------------------------------------- Bug #9865: frozen IO object causes RuntimeError with inspect and fileno https://bugs.ruby-lang.org/issues/9865#change-47563 * Author: Akira Tanaka * Status: Closed * Priority: Normal * Assignee: * Category: * Target version: * ruby -v: ruby 2.2.0dev (2014-05-27 trunk 46150) [x86_64-linux] * Backport: 2.0.0: REQUIRED, 2.1: REQUIRED ---------------------------------------- IO object を freeze すると、inspect や fileno が RuntimeError になるんですが、 これはよろしくないんじゃないかと思います。 ``` % ./ruby -e 'f = open("."); f.freeze; p f' -e:1:in `inspect': can't modify frozen File (RuntimeError) from -e:1:in `p' from -e:1:in `
' % ./ruby -e 'f = open("."); f.freeze; p f.fileno' -e:1:in `fileno': can't modify frozen File (RuntimeError) from -e:1:in `
' % ./ruby -v ruby 2.2.0dev (2014-05-27 trunk 46150) [x86_64-linux] ``` あるいは、なにか理由がありましたっけ? -- https://bugs.ruby-lang.org/