RFR: 8307160: [REDO] Enable the permissive- flag on the Microsoft Visual C compiler [v2]

Thomas Stuefe stuefe at openjdk.org
Wed Aug 9 06:41:40 UTC 2023

On Mon, 7 Aug 2023 06:42:41 GMT, Julian Waters <jwaters at openjdk.org> wrote:

>> We should set the -permissive- flag for the Microsoft Visual C compiler, as was requested by the now backed out [JDK-8241499](https://bugs.openjdk.org/browse/JDK-8241499). It can be done with some effort, given that the significantly stricter gcc can now compile an experimental Windows JDK as of 2023, and will serve to significantly cut down on monstrosities in ancient Windows code
> Julian Waters 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 22 additional commits since the last revision:
>  - Mismatched declaration in D3DGlyphCache.cpp
>  - Fields in awt_TextComponent.cpp
>  - reinterpret_cast needed in AccessBridgeJavaEntryPoints.cpp
>  - Qualifiers in awt_PrintDialog.h should be removed
>  - Likewise for awt_DnDDT.cpp
>  - awt_ole.h include order issue in awt_DnDDS.cpp
>  - Revert awt_ole.h
>  - Earlier fix in awt_ole.h was not complete
>  - Merge branch 'openjdk:master' into patch-10
>  - Likewise for awt_Frame.cpp
>  - ... and 12 more: https://git.openjdk.org/jdk/compare/15f348cb...51230f3d

src/java.desktop/windows/native/libawt/windows/awt_Frame.cpp line 1641:

> 1639:         }
> 1640:     }
> 1641: 

A possible improvement later (and for a future RFE) would be to use RAII for deletion and then get rid of the labels. awt is one of the few places that uses C++ for native code, so why not.

src/java.desktop/windows/native/libawt/windows/awt_TextComponent.cpp line 59:

> 57: AwtTextComponent::OleCallback AwtTextComponent::sm_oleCallback;
> 58: WNDPROC AwtTextComponent::sm_pDefWindowProc = NULL;
> 59: 

Did the compiler complain here? I'm fine with the change, just wanted to know the reason.


PR Review Comment: https://git.openjdk.org/jdk/pull/15096#discussion_r1288013587
PR Review Comment: https://git.openjdk.org/jdk/pull/15096#discussion_r1288015274

More information about the security-dev mailing list