Skip to content

Commit b717a75

Browse files
committed
add assertion status of builder and image to build output
1 parent 8fa7971 commit b717a75

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/RuntimeAssertionsSupport.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,4 +193,12 @@ private boolean desiredAssertionStatusImpl(String name, ClassLoader classLoader)
193193
public boolean desiredAssertionStatus(Class<?> clazz) {
194194
return desiredAssertionStatusImpl(clazz.getName(), clazz.getClassLoader());
195195
}
196+
197+
public boolean getDefaultAssertionStatus() {
198+
return defaultAssertionStatus;
199+
}
200+
201+
public boolean getDefaultSystemAssertionStatus() {
202+
return systemAssertionStatus;
203+
}
196204
}

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/ProgressReporter.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@
5353
import java.util.stream.Collectors;
5454
import java.util.stream.Stream;
5555

56+
import com.oracle.svm.core.RuntimeAssertionsSupport;
5657
import org.graalvm.nativeimage.ImageSingletons;
5758
import org.graalvm.nativeimage.hosted.Feature;
5859
import org.graalvm.nativeimage.impl.ImageSingletonsSupport;
@@ -260,13 +261,20 @@ public void printInitializeEnd(List<Feature> features, ImageClassLoader classLoa
260261
recordJsonMetric(GeneralInfo.GC, gcName);
261262
long maxHeapSize = SubstrateGCOptions.MaxHeapSize.getValue();
262263
String maxHeapValue = maxHeapSize == 0 ? Heap.getHeap().getGC().getDefaultMaxHeapSize() : ByteFormattingUtil.bytesToHuman(maxHeapSize);
264+
265+
l().a(" ").a("Builder assertions: ").a(SubstrateUtil.assertionsEnabled() ? "enabled" : "disabled").a(", builder system assertions: ").a(getSystemAssertionStatus() ? "enabled" : "disabled").println();
263266
l().a(" ").doclink("Image Garbage collector", "#glossary-gc").a(": ").a(gcName).a(" (").doclink("max heap size", "#glossary-gc-max-heap-size").a(": ").a(maxHeapValue).a(")").println();
267+
l().a(" ").a("Image assertions: by default ").a(RuntimeAssertionsSupport.singleton().getDefaultAssertionStatus() ? "enabled" : "disabled").a(", system assertions: by default ").a(RuntimeAssertionsSupport.singleton().getDefaultSystemAssertionStatus() ? "enabled" : "disabled").a(" (class-specific config may apply)").println();
264268

265269
printFeatures(features);
266270
printExperimentalOptions(classLoader);
267271
printResourceInfo();
268272
}
269273

274+
private boolean getSystemAssertionStatus() {
275+
return java.util.ArrayList.class.desiredAssertionStatus();
276+
}
277+
270278
private void printFeatures(List<Feature> features) {
271279
int numFeatures = features.size();
272280
if (numFeatures > 0) {

0 commit comments

Comments
 (0)