Hello! > diff -r 274361bd6915 src/java.base/share/classes/java/lang/Throwable.java > --- a/src/java.base/share/classes/java/lang/Throwable.java Thu Mar 07 > 10:22:19 2019 +0100 > +++ b/src/java.base/share/classes/java/lang/Throwable.java Fri Mar 08 > 02:06:42 2019 -0800 > @@ -874,8 +874,7 @@ > // Validate argument > StackTraceElement[] defensiveCopy = stackTrace.clone(); > for (int i = 0; i < defensiveCopy.length; i++) { > - if (defensiveCopy[i] == null) > - throw new NullPointerException("stackTrace[" + i + "]"); > + Objects.requireNonNull(defensiveCopy[i], "stackTrace[" + i > + "]");
Won't it produce unnecessary garbage due to string concatenation on the common case when all frames are non-null? With best regards, Tagir Valeev.