[jdk21u-dev] RFR: 8195675: Call to insertText with single character from custom Input Method ignored [v3]
Steven Loomis
srl at openjdk.org
Tue Oct 22 15:42:27 UTC 2024
On Mon, 21 Oct 2024 13:16:43 GMT, Steven Loomis <srl at openjdk.org> wrote:
>> - Backport of JDK-8195675
>> - Backport of https://github.com/openjdk/jdk/commit/b8f2ec9091f9f7e5f4611991d04dd8aa113b94fd https://github.com/openjdk/jdk/pull/17921
>
> Steven Loomis has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:
>
> - Merge remote-tracking branch 'origin/master' into jdk-8342073-backport2
> - 8195675: empty commit to trigger build
> - 8342073: Call to insertText with single character from custom Input Method ignored
>
> - Backport of JDK-8195675
> - Backport of https://github.com/openjdk/jdk/commit/b8f2ec9091f9f7e5f4611991d04dd8aa113b94fd
>
> Reviewed-by: prr
> (cherry picked from commit b8f2ec9091f9f7e5f4611991d04dd8aa113b94fd)
Current build issue, can anyone help?
<details>
<summary>Configure</summary>
$ make reconfigure
Re-running configure using arguments '--with-boot-jdk='/usr/local/opt/openjdk at 21''
configure: Configuration created at Tue Oct 22 10:21:47 CDT 2024.
checking for basename... /usr/bin/basename
checking for dirname... /usr/bin/dirname
checking for file... /usr/bin/file
checking for ldd... no
checking for echo... echo [builtin]
checking for tr... /usr/bin/tr
checking for uname... /usr/bin/uname
checking for wc... /usr/bin/wc
checking for grep that handles long lines and -e... /usr/local/bin/ggrep
checking for egrep... /usr/local/bin/ggrep -E
checking for a sed that does not truncate output... /usr/local/bin/gsed
checking for cygpath... [not found]
checking for wslpath... [not found]
checking for cmd.exe... [not found]
checking build system type... x86_64-apple-darwin24.0.0
checking host system type... x86_64-apple-darwin24.0.0
checking target system type... x86_64-apple-darwin24.0.0
checking openjdk-build os-cpu... macosx-x86_64
checking openjdk-target os-cpu... macosx-x86_64
checking compilation type... native
checking for top-level directory... /Users/srl295/src/jdk21u-dev
checking for bash... /usr/local/bin/bash
checking for cat... /usr/local/opt/coreutils/libexec/gnubin/cat
checking for chmod... /usr/local/opt/coreutils/libexec/gnubin/chmod
checking for cp... /usr/local/opt/coreutils/libexec/gnubin/cp
checking for cut... /usr/bin/cut
checking for date... /usr/local/opt/coreutils/libexec/gnubin/date
checking for gdiff... [not found]
checking for diff... /usr/bin/diff
checking for expr... /usr/local/opt/coreutils/libexec/gnubin/expr
checking for find... /usr/bin/find
checking for gunzip... /usr/bin/gunzip
checking for pigz... [not found]
checking for gzip... /usr/bin/gzip
checking for head... /usr/bin/head
checking for ln... /usr/local/opt/coreutils/libexec/gnubin/ln
checking for ls... /usr/local/opt/coreutils/libexec/gnubin/ls
checking for gmkdir... /usr/local/bin/gmkdir
checking for mktemp... /usr/bin/mktemp
checking for mv... /usr/local/opt/coreutils/libexec/gnubin/mv
checking for gawk... [not found]
checking for nawk... [not found]
checking for awk... /usr/bin/awk
checking for printf... printf [builtin]
checking for rm... /usr/local/opt/coreutils/libexec/gnubin/rm
checking for rmdir... /usr/local/opt/coreutils/libexec/gnubin/rmdir
checking for sh... /bin/sh
checking for sort... /usr/bin/sort
checking for tail... /usr/bin/tail
checking for gtar... [not found]
checking for tar... /usr/bin/tar
checking for tee... /usr/bin/tee
checking for touch... /usr/bin/touch
checking for xargs... /usr/bin/xargs
checking for fgrep... /usr/local/bin/ggrep -F
checking for df... /usr/local/opt/coreutils/libexec/gnubin/df
checking for git... /usr/local/bin/git
checking for nice... /usr/bin/nice
checking for greadlink... /usr/local/bin/greadlink
checking for whoami... /usr/bin/whoami
checking for lsb_release... [not found]
checking for cmp... /usr/bin/cmp
checking for uniq... /usr/bin/uniq
checking for build environment type... dev, default (calculated from 'auto')
checking if custom source is suppressed (openjdk-only)... disabled, default
checking for --enable-debug... disabled, default
checking which debug level to use... release
checking which variants of the JVM to build... server
checking if absolute paths should be allowed in the build output... no, release build
checking for toolchain path...
checking for sdk name... macosx
checking for xcodebuild... /usr/bin/xcodebuild
configure: Setting sysroot from xcodebuild with SDK macosx
checking for sysroot... /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.0.sdk
checking for extra path...
checking where to store configuration... in default location
checking what configuration name to use... macosx-x86_64-server-release
checking for zypper... [not found]
checking for apt-get... [not found]
checking for yum... [not found]
checking for brew... /usr/local/bin/brew
checking for pandoc... /usr/local/bin/pandoc
checking for pandoc version... 3.4
configure: WARNING: pandoc is version 3.4, not the recommended version 2.19.2
checking if the pandoc smart extension needs to be disabled for markdown... yes
checking for gmake... [not found]
checking for make... /usr/bin/make
configure: Testing potential make at /usr/bin/make, found using make in PATH
configure: Using GNU make at /usr/bin/make (version: GNU Make 3.81)
checking if make --output-sync is supported... no
checking for make --output-sync value... <invalid>, not available
checking if find supports -delete... yes
checking what type of tar was found... bsd
checking that grep (/usr/local/bin/ggrep) -Fx handles empty lines in the pattern list correctly... yes
checking for unzip... /usr/bin/unzip
checking for zip... /usr/bin/zip
checking for greadelf... [not found]
checking for readelf... [not found]
checking for dot... [not found]
checking for stat... /usr/bin/stat
checking for time... time [builtin]
checking for flock... [not found]
checking for dtrace... /usr/sbin/dtrace
checking for gpatch... [not found]
checking for patch... /usr/bin/patch
checking if date is a GNU compatible version... yes
checking for dsymutil... /usr/bin/dsymutil
checking for mig... /usr/bin/mig
checking for xattr... /usr/bin/xattr
checking for codesign... /usr/bin/codesign
checking for SetFile... /usr/bin/SetFile
checking for ulimit... ulimit [builtin]
checking bash version... 5.2.26
checking if bash supports pipefail... yes
checking if bash supports errexit (-e)... yes
checking for pkg-config... /usr/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for default LOG value...
checking for JMOD compression type... zip-6, default
checking if packaged modules are kept... enabled, default
checking for --with-build-user... srl295, default
checking for --with-jdk-rc-name... OpenJDK Platform, default
checking for --with-vendor-name... N/A, default
checking for --with-jdk-rc-company-name... N/A, default
checking for --with-vendor-url... https://openjdk.org/, default
checking for --with-vendor-bug-url... https://bugreport.java.com/bugreport/, default
checking for --with-vendor-vm-bug-url... https://bugreport.java.com/bugreport/crash.jsp, default
checking for --with-version-string... <none>, default
checking for --with-version-feature... 21, default
checking for --with-version-date... 2025-01-21, default
checking for --with-vendor-version-string... <disabled>, default
checking for --with-macosx-bundle-name-base... OpenJDK, default
checking for --with-macosx-bundle-id-base... net.java.openjdk-internal, default
checking for --with-macosx-bundle-build-version... 0, default
checking for version string... 21.0.6-internal-adhoc.srl295.jdk21u-dev
configure: Found potential Boot JDK using configure arguments
checking for Boot JDK... /usr/local/opt/openjdk at 21
checking Boot JDK version... openjdk version "21.0.5" 2024-10-15 OpenJDK Runtime Environment Homebrew (build 21.0.5) OpenJDK 64-Bit Server VM Homebrew (build 21.0.5, mixed mode, sharing)
checking for java [Boot JDK]... $BOOT_JDK/bin/java
checking for javac [Boot JDK]... $BOOT_JDK/bin/javac
checking for javadoc [Boot JDK]... $BOOT_JDK/bin/javadoc
checking for jar [Boot JDK]... $BOOT_JDK/bin/jar
checking if Boot JDK jar supports --date=TIMESTAMP... true
checking if Boot JDK is 32 or 64 bits... 64
checking for local Boot JDK Class Data Sharing (CDS)... yes, created
checking for Build JDK... yes, will use output dir
checking for docs-reference JDK... no, using interim javadoc for the docs-reference targets
checking what source date to use... 1729182589, from SOURCE_DATE_EPOCH
checking if we should build headless-only (no GUI)... disabled, default
checking if linker should clean out unused code (linktime-gc)... disabled, default
checking for graphviz dot... no, cannot generate full docs
checking for pandoc... yes
checking for --enable-full-docs... disabled, from default 'auto'
checking for cacerts file... default
checking for cacerts source... default
checking for --enable-unlimited-crypto... enabled, default
checking for jni library path... default
checking if static build is available... yes
checking if static build is enabled... disabled, default
configure: Using default toolchain clang (clang/LLVM)
checking for clang... /usr/bin/clang
checking resolved symbolic links for CC... no symlink
configure: Using clang C compiler version 16.0.0 [Apple clang version 16.0.0 (clang-1600.0.26.3) Target: x86_64-apple-darwin24.0.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin]
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether /usr/bin/clang accepts -g... yes
checking for /usr/bin/clang option to enable C11 features... none needed
checking for clang++... /usr/bin/clang++
checking resolved symbolic links for CXX... no symlink
configure: Using clang C++ compiler version 16.0.0 [Apple clang version 16.0.0 (clang-1600.0.26.3) Target: x86_64-apple-darwin24.0.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin]
checking whether the compiler supports GNU C++... yes
checking whether /usr/bin/clang++ accepts -g... yes
checking for /usr/bin/clang++ option to enable C++11 features... -std=gnu++11
checking how to run the C preprocessor... /usr/bin/clang -E
checking how to run the C++ preprocessor... /usr/bin/clang++ -std=gnu++11 -E
configure: Using clang linker version 1115.7.3 [@(#)PROGRAM:ld PROJECT:ld-1115.7.3]
checking for ar... /usr/bin/ar
checking for lipo... /usr/bin/lipo
checking for otool... /usr/bin/otool
checking for install_name_tool... /usr/bin/install_name_tool
checking for metal... [not found]
checking if metal can be run using xcrun... yes, will be using 'xcrun -sdk macosx metal'
checking for metallib... [not found]
checking if metallib can be run using xcrun... yes, will be using 'xcrun -sdk macosx metallib'
checking for strip... /usr/bin/strip
checking for nm... /usr/bin/nm
checking for gobjdump... [not found]
checking for objdump... /usr/bin/objdump
checking for c++filt... /usr/bin/c++filt
checking if CC supports "-m64"... yes
checking if CXX supports "-m64"... yes
checking if both CC and CXX support "-m64"... yes
checking for jtreg... [not found]
checking for jtreg test harness... no, not found
checking for jtreg jdk... no, using BOOT_JDK
checking for jmh (Java Microbenchmark Harness)... no, disabled
checking for jib... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for stdio.h... (cached) yes
checking size of int *... 8
checking for target address size... 64 bits
checking whether byte ordering is bigendian... no
checking for --enable-branch-protection... disabled, default
checking if CC supports "-fdebug-prefix-map=/Users/srl295/src/jdk21u-dev/="... yes
checking if CXX supports "-fdebug-prefix-map=/Users/srl295/src/jdk21u-dev/="... yes
checking if both CC and CXX support "-fdebug-prefix-map=/Users/srl295/src/jdk21u-dev/="... yes
checking if CC supports "-gdwarf-4 -gdwarf-aranges"... yes
checking if CXX supports "-gdwarf-4 -gdwarf-aranges"... yes
checking if both CC and CXX support "-gdwarf-4 -gdwarf-aranges"... yes
checking for --enable-warnings-as-errors... enabled, default
checking if TARGET is x86... no
checking if CC supports "-fno-delete-null-pointer-checks"... yes
checking if CXX supports "-fno-delete-null-pointer-checks"... yes
checking if both CC and CXX support "-fno-delete-null-pointer-checks"... yes
checking if CC supports "-fmacro-prefix-map=/Users/srl295/src/jdk21u-dev/="... yes
checking if CXX supports "-fmacro-prefix-map=/Users/srl295/src/jdk21u-dev/="... yes
checking if both CC and CXX support "-fmacro-prefix-map=/Users/srl295/src/jdk21u-dev/="... yes
checking how to prevent absolute paths in output... using compiler options
checking if CC supports "-ffp-contract=off"... yes
checking if CXX supports "-ffp-contract=off"... yes
checking if both CC and CXX support "-ffp-contract=off"... yes
checking if BUILD is x86... no
checking if BUILD_CC supports "-fno-delete-null-pointer-checks"... yes
checking if BUILD_CXX supports "-fno-delete-null-pointer-checks"... yes
checking if both BUILD_CC and BUILD_CXX support "-fno-delete-null-pointer-checks"... yes
checking if BUILD_CC supports "-fmacro-prefix-map=/Users/srl295/src/jdk21u-dev/="... yes
checking if BUILD_CXX supports "-fmacro-prefix-map=/Users/srl295/src/jdk21u-dev/="... yes
checking if both BUILD_CC and BUILD_CXX support "-fmacro-prefix-map=/Users/srl295/src/jdk21u-dev/="... yes
checking how to prevent absolute paths in output... using compiler options
checking if BUILD_CC supports "-ffp-contract=off"... yes
checking if BUILD_CXX supports "-ffp-contract=off"... yes
checking if both BUILD_CC and BUILD_CXX support "-ffp-contract=off"... yes
checking how to run strip... -S
checking what type of native debug symbols to use... external
checking if we should add external native debug symbols to the shipped bundles... no
checking if native coverage is available... yes
checking for --enable-native-coverage... disabled, default
checking if AddressSanitizer (asan) is available... yes
checking for --enable-asan... disabled, default
checking for --with-additional-ubsan-checks... <disabled>, default
checking if UndefinedBehaviorSanitizer (ubsan) is available... yes
checking for --enable-ubsan... disabled, default
checking if LeakSanitizer (lsan) is available... yes
checking for --enable-lsan... disabled, default
checking if fallback linker enabled... disabled, default
checking for which libjpeg to use... bundled
checking for which giflib to use... bundled
checking for PNG... yes
checking for which libpng to use... bundled
checking for compress in -lz... yes
checking for which zlib to use... system
checking for system zlib functionality... ok
checking for which lcms to use... bundled
checking for which harfbuzz to use... bundled
checking for cups/cups.h... yes
checking for cups/ppd.h... yes
Using freetype: bundled
checking for --enable-hsdis-bundling... disabled, default
checking what hsdis backend to use... 'none', hsdis will not be built
checking if hsdis should be bundled... no
checking for --enable-libffi-bundling... disabled, default
checking for cos in -lm... yes
checking for dlopen in -ldl... yes
checking for JVM features enabled by the user... none
checking for JVM features disabled by the user... none
checking if platform is supported by CDS... yes
checking if JVM feature 'cds' is available... yes
checking for dtrace tool and platform support... /usr/sbin/dtrace
checking for sys/sdt.h... yes
checking if JVM feature 'dtrace' is available... yes
checking if platform is supported by JVMCI... yes
checking if JVM feature 'jvmci' is available... yes
checking if platform is supported by Shenandoah... yes
checking if JVM feature 'shenandoahgc' is available... yes
checking if static-build is enabled in configure... no, use --enable-static-build to enable static build.
checking if JVM feature 'static-build' is available... no
checking if platform is supported by ZGC... yes
checking if JVM feature 'zgc' is available... yes
checking JVM features to use for variant 'server'... 'cds compiler1 compiler2 dtrace epsilongc g1gc jfr jni-check jvmci jvmti management parallelgc serialgc services shenandoahgc vm-structs zgc'
checking what hotspot build time to use... 2024-10-17T16:29:49Z (from --with-source-date)
checking if the jtreg failure handler is available... no (jtreg not present)
checking if the jtreg failure handler should be built... disabled, default
checking if the jtreg test thread factory is available... no (jtreg not present)
checking if the jtreg test thread factory should be built... disabled, from default 'auto'
checking if the CDS classlist generation should be enabled... enabled, from default 'auto'
checking if any translations should be excluded... no
checking if static man pages should be copied... enabled, default
checking if CDS archive is available... yes
checking if a default CDS archive should be generated... enabled, from default 'auto'
checking if CDS archive is available... yes
checking if compatible cds region alignment enabled... disabled, default
checking for macosx code signing mode... auto, default
checking for macosx code signing identity... openjdk_codesign, default
checking if codesign with hardened runtime is possible... no
checking if debug mode codesign is possible... yes
checking for macosx code signing mode... debug
checking for number of cores... 16
checking for memory size... 65536 MB
checking for appropriate number of jobs to run in parallel... 16
checking whether to use javac server... enabled, default
checking flags for boot jdk java command ... -Duser.language=en -Duser.country=US -XX:+UnlockDiagnosticVMOptions -XX:-VerifySharedSpaces -XX:SharedArchiveFile=/Users/srl295/src/jdk21u-dev/build/macosx-x86_64-server-release/configure-support/classes.jsa -Xshare:auto
checking flags for boot jdk java command for big workloads... -Xms64M -Xmx1600M
checking flags for bootcycle boot jdk java command for big workloads... -Xms64M -Xmx1600M
checking flags for boot jdk java command for small workloads... -XX:+UseSerialGC -Xms32M -Xmx512M -XX:TieredStopAtLevel=1
checking for --enable-icecc... disabled, default
checking if precompiled headers are available... yes
checking for --enable-precompiled-headers... enabled, from default 'auto'
checking for ccache... /usr/local/bin/ccache
checking if ccache is available... yes
checking if ccache is enabled... disabled, default
checking if build directory is on local disk... yes
configure: creating /Users/srl295/src/jdk21u-dev/build/macosx-x86_64-server-release/configure-support/config.status
config.status: creating /Users/srl295/src/jdk21u-dev/build/macosx-x86_64-server-release/spec.gmk
config.status: creating /Users/srl295/src/jdk21u-dev/build/macosx-x86_64-server-release/bootcycle-spec.gmk
config.status: creating /Users/srl295/src/jdk21u-dev/build/macosx-x86_64-server-release/buildjdk-spec.gmk
config.status: creating /Users/srl295/src/jdk21u-dev/build/macosx-x86_64-server-release/compare.sh
config.status: creating /Users/srl295/src/jdk21u-dev/build/macosx-x86_64-server-release/Makefile
====================================================
The existing configuration has been successfully updated in
/Users/srl295/src/jdk21u-dev/build/macosx-x86_64-server-release
using configure arguments '--with-boot-jdk='/usr/local/opt/openjdk at 21''.
</details>
Configuration summary:
* Name: macosx-x86_64-server-release
* Debug level: release
* HS debug level: product
* JVM variants: server
* JVM features: server: 'cds compiler1 compiler2 dtrace epsilongc g1gc jfr jni-check jvmci jvmti management parallelgc serialgc services shenandoahgc vm-structs zgc'
* OpenJDK target: OS: macosx, CPU architecture: x86, address length: 64
* Version string: 21.0.6-internal-adhoc.srl295.jdk21u-dev (21.0.6-internal)
* Source date: 1729182589 (2024-10-17T16:29:49Z)
Tools summary:
* Boot JDK: openjdk version "21.0.5" 2024-10-15 OpenJDK Runtime Environment Homebrew (build 21.0.5) OpenJDK 64-Bit Server VM Homebrew (build 21.0.5, mixed mode, sharing) (at /usr/local/opt/openjdk at 21)
* Toolchain: clang (clang/LLVM from Xcode 16.0)
* Sysroot: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.0.sdk
* C Compiler: Version 16.0.0 (at /usr/bin/clang)
* C++ Compiler: Version 16.0.0 (at /usr/bin/clang++)
Build performance summary:
* Build jobs: 16
* Memory limit: 65536 MB
WARNING: The result of this configuration has overridden an older
configuration. You *should* run 'make clean' to make sure you get a
proper build. Failure to do so might result in strange build problems.
The following warnings were produced. Repeated here for convenience:
WARNING: pandoc is version 3.4, not the recommended version 2.19.2
$ make clean
…
$ make
Building target 'default (exploded-image)' in configuration 'macosx-x86_64-server-release'
Optimizing the exploded image
Error: Unable to initialize main class build.tools.jigsaw.AddPackagesAttribute
Caused by: java.lang.ClassFormatError: StackMapTable format error: access beyond the end of attribute
make[3]: *** [/Users/srl295/src/jdk21u-dev/build/macosx-x86_64-server-release/jdk/_optimize_image_exec.marker] Error 1
make[2]: *** [exploded-image-optimize] Error 2
ERROR: Build failed for target 'default (exploded-image)' in configuration 'macosx-x86_64-server-release' (exit code 2)
=== Output from failing command(s) repeated here ===
* For target jdk__optimize_image_exec:
Error: Unable to initialize main class build.tools.jigsaw.AddPackagesAttribute
Caused by: java.lang.ClassFormatError: StackMapTable format error: access beyond the end of attribute
* All command lines available in /Users/srl295/src/jdk21u-dev/build/macosx-x86_64-server-release/make-support/failure-logs.
=== End of repeated output ===
No indication of failed target found.
HELP: Try searching the build log for '] Error'.
HELP: Run 'make doctor' to diagnose build problems.
make[1]: *** [main] Error 2
make: *** [default] Error 2
-------------
PR Comment: https://git.openjdk.org/jdk21u-dev/pull/1052#issuecomment-2429626532
More information about the jdk-updates-dev
mailing list