Hi Erik,  thanks for the clarification.
Unfortunately we do not see  this in GHA ,  so backports look  nice and ‘green’ 
there .

And some people with strict version requirements in the company most likely 
have a problem with an old / unpatched JDK20  .


Best regards, Matthias


From: Erik Joelsson <erik.joels...@oracle.com>
Sent: Wednesday, 7 August 2024 13:58
To: Baesken, Matthias <matthias.baes...@sap.com>; Magnus Ihse Bursie 
<magnus.ihse.bur...@oracle.com>
Subject: Re: jdk21u-dev build issue : 8326332: Unclosed inline tags cause 
misalignment in summary tables


Hello Matthias,

If you had sent this to build-dev, you would have received an answer much 
quicker as both Magnus and I were on vacation.

No, you can't use JDK N features in the langtools modules because because those 
need to be compatible with the official bootjdk which is version JDK N-1. This 
has been the case since long before I started working on the JDK.

/Erik
On 7/24/24 12:52 AM, Baesken, Matthias wrote:
Hi,  when building   the backport to 21u-dev
8326332: Unclosed inline tags cause misalignment in summary tables
https://github.com/openjdk/jdk21u-dev/pull/866

with a BOOT JDK 20, I run into these build errors :
(the build works fine when a JDK21 is used as BOOT JDK  ;  in  GHA it is also 
fine because seems we use JDK21 boot JDK there )


/open_jdk/jdk21u_dev_2/jdk21u-dev/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java:1156:
 error: cannot find symbol
                        && openTags.getLast().equals(name)) {
                                   ^
  symbol:   method getLast()
  location: variable openTags of type List<Name>
/open_jdk/jdk21u_dev_2/jdk21u-dev/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java:1157:
 error: cannot find symbol
                    openTags.removeLast();
                            ^
  symbol:   method removeLast()
  location: variable openTags of type List<Name>
/open_jdk/jdk21u_dev_2/jdk21u-dev/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java:1501:
 error: cannot find symbol
            result.add(RawHtml.endElement(openTags.removeLast()));
                                                  ^
  symbol:   method removeLast()
  location: variable openTags of type List<Name>
3 errors
gmake[3]: *** [CompileInterimLangtools.gmk:127: 
/open_jdk/jdk21u_dev_2/buildfolder/buildtools/interim_langtools_modules/jdk.javadoc.interim/_the.BUILD_jdk.javadoc.interim_batch]
 Error 1
gmake[2]: *** [make/Main.gmk:78: interim-langtools] Error 2


We use here functionality of class List  ( getLast() / removeLast() )  that was 
added in jdk21.
Shouldn't we be able to use this functionality ?
For backports it would be much easier/ cleaner to have the ability of  clean 
backports without the need to  remove jdk21 functionality .
Also some people might not even notice those issues , because  they cannot use  
old/unpatched/un-secure JDK20  .

It looks like there might be an issue in the build process so that we reference 
 java.base  from boot jdk20  , or is it done on purpose that for 
CompileInterimLangtools / jdk.javadoc this cannot be used) ?


Best regards, Matthias

Reply via email to