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

(porting) suggested improvements to make VM easier to port (ANSI-C)

    XMLWordPrintable

    Details

    • Subcomponent:
    • Resolved In Build:
      1.2
    • CPU:
      generic
    • OS:
      solaris_2.5.1

      Description

      Licensee made a minimal effort to produce source that is more portable.

      In the following patch listing, "L" refers to the left path which is original
      file from JavaSoft and "R" refers to the right path which is our modified file.
      At the end of each "---------" line is "ANSI-C", see below for explanation.

      Portability, "ANSI-C" explanation:
      ----------------------------------
      Functions that take a variable number of arguments must have their prototype
      declared before they are called. The function 'panic()' is sometimes called
      without its prototype.

      It is undefined what happens on integer overflow. The code in utf8pool.c
      assumes silent wraparound. Our platform issues an error.

      The function 'ioctl()' is not in ANSI-C or POSIX.1.

      Specific examples of "ANSI-C" portability bugs:

       Comparison of J:\JAE1_2T\src\share\javavm\runtime\CLASSRESOLVER.C and
      J:\PC\SHARE\javavm\runtime\CLASSRESOLVER.C
      Version 1.123

      ----------------------------------------------------- ANSI-C
      R42 extern void panic (const char *, ...);


      Comparison of J:\JAE1_2T\src\share\javavm\runtime\UTF8POOL.C and
      J:\PC\SHARE\javavm\runtime\UTF8POOL.C
      Version 1.13

      ----------------------------------------------------- ANSI-C
      L32

      R32 extern void panic (const char *, ...);

        Attachments

          Activity

            People

            Assignee:
            duke J. Duke (Inactive)
            Reporter:
            jbenoit Jonathan Benoit (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: