[#4479] Requesting addition to IRB (configurable standard output) — Sascha Ebach <se@...>

Hello,

13 messages 2005/02/24
[#4482] Re: Requesting addition to IRB (configurable standard output) — Sam Roberts <sroberts@...> 2005/02/25

Quoting se@digitale-wertschoepfung.de, on Fri, Feb 25, 2005 at 01:22:34AM +0900:

[#4483] Re: Requesting addition to IRB (configurable standard output) — Eric Hodel <drbrain@...7.net> 2005/02/25

On 24 Feb 2005, at 19:51, Sam Roberts wrote:

[#4488] Re: Requesting addition to IRB (configurable standard output) — Sam Roberts <sroberts@...> 2005/02/26

Quoting drbrain@segment7.net, on Sat, Feb 26, 2005 at 02:43:31AM +0900:

[#4489] Re: Requesting addition to IRB (configurable standard output) — Eric Hodel <drbrain@...7.net> 2005/02/26

On 25 Feb 2005, at 16:03, Sam Roberts wrote:

Re: Passing a block to methods in mkmf.rb

From: nobu.nokada@...
Date: 2005-02-11 23:06:31 UTC
List: ruby-core #4425
Hi,

At Sat, 12 Feb 2005 01:31:00 +0900,
Berger, Daniel wrote in [ruby-core:04421]:
> I'm curious as to what the optional block is for in the mkmf.rb methods
> like have_header, etc.  I thought it merely yielded back the C source
> that it was trying to compile behind the scenes to do the check.
> However, when I try to pass a block I get errors:
> 
> # extconf.rb test
> have_header("windows.h"){ |code| p code }

The block must return new source code, not nil.

> On Windows XP Pro:
> 
> C:\eclipse\workspace\ruby-foo>ruby extconftest.rb
> checking for windows.h... c:/ruby/lib/ruby/1.8/fileutils.rb:687:in
> `unlink': Permission denied - mkmftmp.log (Errno::EACCES)

It's a bug.

> On Solaris 9:
> 
> djberge@sp5wd-b1-/home/djberge/programming/ruby-534>ruby extconftest.rb
> checking for wait.h... /opt/lib/ruby/1.8/mkmf.rb:215:in `create_tmpsrc':
> private method `sub' called for nil:NilClass (NoMethodError)

This is caused by nil return from the block, and results the
above error on the platform which disallow removing opened
files.


Index: lib/mkmf.rb
===================================================================
RCS file: /cvs/ruby/src/ruby/lib/mkmf.rb,v
retrieving revision 1.162.2.22
diff -U2 -p -r1.162.2.22 mkmf.rb
--- lib/mkmf.rb	6 Feb 2005 17:03:35 -0000	1.162.2.22
+++ lib/mkmf.rb	11 Feb 2005 23:02:55 -0000
@@ -173,7 +173,7 @@ module Logging
       begin
         log.print(open {yield})
+      ensure
         @log.close
         File::open(tmplog) {|t| FileUtils.copy_stream(t, log)}
-      ensure
         @log, @logfile, @orgout, @orgerr = log, *save
         @postpone -= 1


-- 
Nobu Nakada

In This Thread

Prev Next