Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8197864

VS2017 (C4334) Result of 32-bit Shift Implicitly Converted to 64 bits

XMLWordPrintable

    • b04
    • windows
    • Verified

        interpreterRT_x86_64.cpp
        <directory>/open/src/hotspot/cpu/x86/interpreterRT_x86_64.cpp(350): error C2220: warning treated as error - no 'object' file generated
        <directory>/open/src/hotspot/cpu/x86/interpreterRT_x86_64.cpp(350): warning C4334: '<<': result of 32-bit shift implicitly converted to 64 bits (was 64
        -bit shift intended?)

        Generated when compiling method pass_float():

          virtual void pass_float()
          {
            jint from_obj = *(jint *)(_from+Interpreter::local_offset_in_bytes(0));
            _from -= Interpreter::stackElementSize;

            if (_num_args < Argument::n_float_register_parameters_c-1) {
              *_reg_args++ = from_obj;
              *_fp_identifiers |= (intptr_t)(0x01 << (_num_args*2)); // mark as float
              _num_args++;
            } else {
              *_to++ = from_obj;
            }
          }

              lfoltan Lois Foltan
              lfoltan Lois Foltan
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: