From 0348906c22af4560c23b2355c01fbb8ed1dfa225 Mon Sep 17 00:00:00 2001 From: katie <32645020+katherine-hough@users.noreply.github.com> Date: Sat, 20 Sep 2025 12:42:36 -0400 Subject: [PATCH] * Cleared the `ACC_VARARGS` access flag on all shadow methods --- .../prl/galette/internal/transform/ShadowMethodCreator.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/galette-agent/src/main/java/edu/neu/ccs/prl/galette/internal/transform/ShadowMethodCreator.java b/galette-agent/src/main/java/edu/neu/ccs/prl/galette/internal/transform/ShadowMethodCreator.java index cc67090..c371a18 100644 --- a/galette-agent/src/main/java/edu/neu/ccs/prl/galette/internal/transform/ShadowMethodCreator.java +++ b/galette-agent/src/main/java/edu/neu/ccs/prl/galette/internal/transform/ShadowMethodCreator.java @@ -60,7 +60,10 @@ public SimpleList createShadows() { } private MethodNode createShadow(MethodNode mn) { - int shadowAccess = (mn.access & ~Opcodes.ACC_NATIVE) | Opcodes.ACC_SYNTHETIC; + // Start with the original method's access flags + // then, clear the ACC_NATIVE and ACC_VARARGS flags + // and set ACC_SYNTHETIC flag + int shadowAccess = (mn.access & ~Opcodes.ACC_NATIVE & ~Opcodes.ACC_VARARGS) | Opcodes.ACC_SYNTHETIC; MethodNode shadow = new MethodNode( GaletteTransformer.ASM_VERSION, shadowAccess,