From: "avyy (Alexander Yunin)" Date: 2013-09-04T21:58:37+09:00 Subject: [ruby-core:57014] [ruby-trunk - Bug #8205] Regexp.union behavior and Regexp.try_convert Issue #8205 has been updated by avyy (Alexander Yunin). Hello, Bug description is incorrect, sorry. Now i want to say that implementation of String#to_regexp can breaks behavior of Regexp::union. class String def to_regexp /regexp/ end end Regexp.union('/some_regexp/') #=> /regexp/ And it's not documented now. ---------------------------------------- Bug #8205: Regexp.union behavior and Regexp.try_convert https://bugs.ruby-lang.org/issues/8205#change-41611 Author: avyy (Alexander Yunin) Status: Feedback Priority: Low Assignee: Category: Target version: ruby -v: 1.9.3p374 Backport: Hi! Why Regexp.union('/../') trying to convert string with directly call rb_check_regexp_type(arg) (re.c:3139) instead of rb_reg_s_try_convert (re.c:3122)? I think second variant would be more correct, and i would be able to rewrite Regexp.try_convert in my code for changing behavior as i need. For example: i have the code where was implemented String#to_regexp which breaks default behavior of Regexp.union and i got incorrect regexp. But i can't (for some reasons) to rewrite to_regexp method. Yes, stupid example, but it's real situation. -- http://bugs.ruby-lang.org/