8199319 broke the non-PCH build

Volker Simonis volker.simonis at gmail.com
Mon Mar 12 15:39:12 UTC 2018


Hi,

change "8199319: Remove handles.inline.hpp include from
reflectionUtils.hpp" breaks the non-PCH build (at least on Ubuntu
16.04 with gcc 5.4.0). If you configure with
"--disable-precompiled-headers" you will get a whole lot of undefined
reference for "Handle::Handle(Thread*, oopDesc*)" (see attached list
at the end of the mail).

I wonder if change 8199319 has ever been tested with a non-PCH build?
Or maybe this is specific to newer compiler versions? If non-PCH tests
have been done without running into this issue it would be great to
know which compiler versions have been used.

Finally, I REALLY, REALLY (as I've done for about the last 10 years or
so :) advise to add a "non-PCH" build to your secrete, internal
JPRT/Mach5 whatsoever HotSpot tests to catch such errors.

I'm currently working on a fix for this. If somebody else is already
working on this issue, please let me know so we don't duplicate the
work.

Regards,
Volker

hotspot/share/oops/arrayKlass.cpp:111: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/oops/arrayKlass.cpp:111: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/classfile/classListParser.cpp:347: undefined reference
to `Handle::Handle(Thread*, oopDesc*)'
hotspot/share/classfile/classLoaderData.cpp:387: undefined reference
to `Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/handles.hpp:121: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/jniHandles.cpp:532: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/jniHandles.cpp:532: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/jniHandles.cpp:532: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/jniHandles.cpp:532: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/oops/klass.cpp:523: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/handles.hpp:121: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/handles.hpp:123: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/handles.hpp:124: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/classfile/stringTable.cpp:301: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/classfile/systemDictionaryShared.cpp:131: undefined
reference to `Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/handles.hpp:121: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/handles.hpp:124: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/handles.hpp:121: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/classfile/systemDictionaryShared.cpp:152: undefined
reference to `Handle::Handle(Thread*, oopDesc*)'
hotspot/share/classfile/systemDictionaryShared.cpp:202: undefined
reference to `Handle::Handle(Thread*, oopDesc*)'
hotspot/share/runtime/handles.hpp:121: undefined reference to
`Handle::Handle(Thread*, oopDesc*)'
hotspot/share/classfile/systemDictionaryShared.cpp:246: undefined
reference to `Handle::Handle(Thread*, oopDesc*)'
hotspot/share/classfile/systemDictionaryShared.cpp:263: undefined
reference to `Handle::Handle(Thread*, oopDesc*)'
hotspot/share/classfile/systemDictionaryShared.cpp:291: undefined
reference to `Handle::Handle(Thread*, oopDesc*)'
hotspot/share/classfile/systemDictionaryShared.cpp:284: undefined
reference to `Handle::Handle(Thread*, oopDesc*)'
hotspot/share/classfile/systemDictionaryShared.cpp:499: undefined
reference to `Handle::Handle(Thread*, oopDesc*)'


More information about the hotspot-runtime-dev mailing list