1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* win32/mkexports.rb: deal with __fastcall name decorations.

[ruby-list:44111]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2007-10-13 18:55:54 +00:00
parent c7f7510259
commit 5542fe44bd
3 changed files with 9 additions and 4 deletions

View file

@ -1,3 +1,8 @@
Sun Oct 14 03:55:52 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/mkexports.rb: deal with __fastcall name decorations.
[ruby-list:44111]
Sun Oct 14 02:20:40 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* encoding.c (rb_cEncoding): new Encoding class.

View file

@ -15,7 +15,7 @@ class Exports::Bcc < Exports
opt = /\.(?:so|dll)\z/i =~ obj ? "-ee" : "-oiPUBDEF -oiPUBD32"
IO.foreach("|tdump -q #{opt} #{obj.tr('/', '\\')} < nul") do |l|
next unless /(?:PUBDEF|PUBD32|EXPORT)/ =~ l
yield $1, !$2 /'(.*?)'\s+Segment:\s+_(TEXT)?/ =~ l
yield $1 if /'(.*?)'/ =~ l
end
end
yield "_strcasecmp", "_stricmp"

View file

@ -92,9 +92,9 @@ class Exports::Mswin < Exports
next if /^[[:xdigit:]]+ 0+ UNDEF / =~ l
next unless l.sub!(/.*?\s(\(\)\s+)?External\s+\|\s+/, '')
is_data = !$1
if noprefix or l.sub!(/^_/, '')
next if /@.*@/ =~ l || /@[[:xdigit:]]{16}$/ =~ l
l.sub!(/^/, '_') if /@\d+$/ =~ l
if noprefix or /^[@_]/ =~ l
next if /(?!^)@.*@/ =~ l || /@[[:xdigit:]]{16}$/ =~ l
l.sub!(/^[@_]/, '') if /@\d+$/ !~ l
elsif !l.sub!(/^(\S+) \([^@?\`\']*\)$/, '\1')
next
end