--- old/src/jdk.jextract/share/classes/com/sun/tools/jextract/tree/MacroTree.java 2018-09-18 19:08:05.000000000 +0530 +++ new/src/jdk.jextract/share/classes/com/sun/tools/jextract/tree/MacroTree.java 2018-09-18 19:08:05.000000000 +0530 @@ -28,11 +28,20 @@ public class MacroTree extends Tree { private final Optional value; - public MacroTree(Cursor c, Optional value) { - super(c); + MacroTree(Cursor c, Optional value) { + this(c, value, c.spelling()); + } + + private MacroTree(Cursor c, Optional value, String name) { + super(c, name); this.value = value; } + @Override + public MacroTree withName(String newName) { + return name().equals(newName)? this : new MacroTree(cursor(), value, newName); + } + public Optional value() { return value; }