Skip to content
Process: idea [61601]
Path: /Applications/IntelliJ IDEA 14.app/Contents/MacOS/idea
Identifier: com.jetbrains.intellij
Version: 14.1 (IU-141.177.4)
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: idea [61601]
User ID: 501
Date/Time: 2015-05-08 17:07:21.695 -0500
View 1.patch.patch
diff --git a/core/src/main/java/org/jruby/ir/IRBuilder.java b/core/src/main/java/org/jruby/ir/IRBuilder.java
index 4f2ec6a..0ebf86e 100644
--- a/core/src/main/java/org/jruby/ir/IRBuilder.java
+++ b/core/src/main/java/org/jruby/ir/IRBuilder.java
@@ -2201,6 +2201,13 @@ public class IRBuilder {
* ****************************************************************/
public Operand buildEnsureNode(EnsureNode ensureNode) {
+ // Save $! in a temp var so it can be restored when the exception gets handled.
+ Variable savedGlobalException = createTemporaryVariable();
diff --git a/build.xml b/build.xml
index 64c66cb..f347790 100644
--- a/build.xml
+++ b/build.xml
@@ -307,6 +307,7 @@
<zipfileset src="${build.lib.dir}/joda-time-1.6.1.jar"/>
<zipfileset src="${build.lib.dir}/yydebug.jar"/>
<zipfileset src="${build.lib.dir}/nailgun-0.7.1.jar"/>
+ <zipfileset src="${build.lib.dir}/clojure.jar"/>
<metainf dir="${base.dir}/spi">
View gist:70d17716d1e2f5e2ae70
The Rubinius process is aborting with signal: SIGSEGV
--- begin system info ---
sysname: Darwin
nodename: Charless-MBP-2
release: 14.0.0
version: Darwin Kernel Version 14.0.0: Fri Sep 19 00:26:44 PDT 2014; root:xnu-2782.1.97~2/RELEASE_X86_64
machine: x86_64
--- end system info ---
--- begin system backtrace ---
0 ruby 0x000000010bffd928 _ZN8rubiniusL12segv_handlerEi + 248
10000.times do |i|
puts i
$namespace = Module.new
$namespace.module_eval "
autoload :Foo, 'foo.rb'
def self.go
Foo
end"
start = false
p <<-EOS.gsub(/^ {6}/, '')
#{'――― ERROR REPORT TEMPLATE ―――――――――――――――――――――――――――――――――――――――――――――――――――――――'}
- What did you do?
- What did you expect to happen?
- What happened instead?
Error details
#{$$}: #{$$}
#{$$}
/**
* Best attempt at breaking the code of arity values! We figure out how many fixed/required parameters
* must be supplied. Then we figure out if we need to mark the value as optional. Optional is indicated
* by multiplying -1 * (fixed + 1). Keyword args optional and rest values can indicate this optional
* condition but only if no required keyword arguments are present.
*/
public int arityValue() {
int oneForKeywords = requiredKwargs > 0 ? 1 : 0;
int fixedValue = pre() + post() + oneForKeywords;
boolean hasOptionalKeywords = kwargs - requiredKwargs > 0;
Decoding compiled method 0x0000000103481a50:
Code:
[Entry Point]
[Verified Entry Point]
[Constants]
# {method} {0x000000011a78ba00} 'invokeStatic_L6_L' '(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;' in 'java/lang/invoke/LambdaForm$DMH'
# parm0: rsi:rsi = 'java/lang/Object'
# parm1: rdx:rdx = 'java/lang/Object'
# parm2: rcx:rcx = 'java/lang/Object'
# parm3: r8:r8 = 'java/lang/Object'
percent live alloc'ed stack class
rank self accum bytes objs bytes objs trace name
1 13.76% 13.76% 30192480 377406 66869520 835869 436418 org.jruby.runtime.builtin.IRubyObject[]
2 8.29% 22.05% 18183744 378828 40121760 835870 436417 org.jruby.RubyArray
3 4.74% 26.79% 10402048 1 10402048 1 436358 byte[]
4 4.74% 31.53% 10402048 1 10402048 1 434525 byte[]
5 3.00% 34.53% 6584024 103390 6584024 103390 436490 byte[]
6 2.62% 37.15% 5747712 119744 15175824 316163 436391 org.jruby.RubyArray
7 1.89% 39.04% 4135600 103390 4135600 103390 436491 org.jruby.RubyString
8 1.89% 40.93% 4135600 103390 4135600 103390 436489 org.jruby.util.ByteList
diff --git a/core/src/main/java/org/jruby/javasupport/JavaClass.java b/core/src/main/java/org/jruby/javasupport/JavaClass.java
index 2d25d29..ab917e8 100644
--- a/core/src/main/java/org/jruby/javasupport/JavaClass.java
+++ b/core/src/main/java/org/jruby/javasupport/JavaClass.java
@@ -518,7 +518,7 @@ public class JavaClass extends JavaObject {
private RubyModule unfinishedProxyModule;
private RubyClass unfinishedProxyClass;
- private final ReentrantLock proxyLock = new ReentrantLock();
+ private final ReentrantLock proxyLock;
Something went wrong with that request. Please try again.