-
Bug
-
Resolution: Fixed
-
P3
-
11, 15
-
b06
-
generic
-
generic
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8246425 | 13.0.4 | Matthias Baesken | P3 | Resolved | Fixed | b04 |
JDK-8243413 | 11.0.8-oracle | Matthias Baesken | P3 | Resolved | Fixed | b04 |
JDK-8238671 | 11.0.7 | Matthias Baesken | P3 | Resolved | Fixed | b03 |
when experimenting with gcc8 and the -flto compiler flag I was running into these warnings in the c1 coding :
/open_jdk/jdk_3/jdk/src/hotspot/share/c1/c1_LIRGenerator.hpp:50:7: warning: type 'struct SwitchRange' violates the C++ One Definition Rule [-Wodr]
class SwitchRange: public CompilationResourceObj {
^
/open_jdk/jdk_3/jdk/src/hotspot/share/opto/parse2.cpp:319: note: a different type is defined in another translation unit
class SwitchRange : public StackObj {
/usr/work/d040975/open_jdk/jdk_3/jdk/src/hotspot/share/c1/c1_LIRGenerator.hpp:52:7: note: the first difference of corresponding definitions is field '_low_key'
int _low_key;
^
/open_jdk/jdk_3/jdk/src/hotspot/share/opto/parse2.cpp:321: note: a field with different name is defined in another translation unit
jint _lo; // inclusive lower limit
/open_jdk/jdk_3/jdk/src/hotspot/share/c1/c1_LIRGenerator.hpp:50:7: warning: type 'struct SwitchRange' violates the C++ One Definition Rule [-Wodr]
class SwitchRange: public CompilationResourceObj {
^
/open_jdk/jdk_3/jdk/src/hotspot/share/opto/parse2.cpp:319: note: a different type is defined in another translation unit
class SwitchRange : public StackObj {
/usr/work/d040975/open_jdk/jdk_3/jdk/src/hotspot/share/c1/c1_LIRGenerator.hpp:52:7: note: the first difference of corresponding definitions is field '_low_key'
int _low_key;
^
/open_jdk/jdk_3/jdk/src/hotspot/share/opto/parse2.cpp:321: note: a field with different name is defined in another translation unit
jint _lo; // inclusive lower limit
- backported by
-
JDK-8238671 struct SwitchRange in HS violates C++ One Definition Rule
- Resolved
-
JDK-8243413 struct SwitchRange in HS violates C++ One Definition Rule
- Resolved
-
JDK-8246425 struct SwitchRange in HS violates C++ One Definition Rule
- Resolved