Loading ...
Sorry, an error occurred while loading the content.

Bugreport

Expand Messages
  • Ali Akcaagac
    Hello, A Happy new Year to you all. I got a little bugreport which looks like this (attachment). I was able to solve this by commenting some lines within the
    Message 1 of 8 , Jan 2, 2004
    • 0 Attachment
      Hello,

      A Happy new Year to you all. I got a little bugreport which looks like
      this (attachment). I was able to solve this by commenting some lines
      within the code. Would be cool to have that fixed. System Linux, XFree86
      4.4.0 RC2, Lunix 2.6.0 :)
    • Dan Sharp
      ... Looks like you need the (very) recently released 6.2.169 patch which should solve this very problem. ftp://ftp.vim.org/pub/vim/patches/6.2.169 Dan Sharp
      Message 2 of 8 , Jan 2, 2004
      • 0 Attachment
        Ali Akcaagac wrote:
        >
        > A Happy new Year to you all. I got a little bugreport which looks like
        > this (attachment). I was able to solve this by commenting some lines
        > within the code. Would be cool to have that fixed. System Linux, XFree86
        > 4.4.0 RC2, Lunix 2.6.0 :)
        >
        > /usr/X11R6/include/X11/Xlib.h:103: error: conflicting types for `_Xmblen'
        > auto/osdef.h:124: error: previous declaration of `_Xmblen'

        Looks like you need the (very) recently released 6.2.169 patch which
        should solve this very problem.

        ftp://ftp.vim.org/pub/vim/patches/6.2.169

        Dan Sharp
      • Ali Akcaagac
        ... I am on Vim 6.2.170 already which includes .169 as well. So the problem still exists. greetings, Ali Akcaagac
        Message 3 of 8 , Jan 2, 2004
        • 0 Attachment
          > Looks like you need the (very) recently released 6.2.169 patch
          > which should solve this very problem.
          >
          > ftp://ftp.vim.org/pub/vim/patches/6.2.169

          I am on Vim 6.2.170 already which includes .169 as well. So the problem
          still exists.

          greetings,

          Ali Akcaagac
        • Bram Moolenaar
          ... Please show me the lines in Xlib.h that define _Xmblen(). Also find out whether ISC is defined or not. osdef2.h.in currently contains: #ifdef ISC extern
          Message 4 of 8 , Jan 3, 2004
          • 0 Attachment
            Ali Akcaagac wrote:

            > A Happy new Year to you all. I got a little bugreport which looks like
            > this (attachment). I was able to solve this by commenting some lines
            > within the code. Would be cool to have that fixed. System Linux, XFree86
            > 4.4.0 RC2, Lunix 2.6.0 :)
            >
            >
            > Starting make in the src directory.
            > If there are problems, cd to the src directory and run make there
            > cd src && make first
            > make[1]: Entering directory `/tmp/vim62/src'
            > gcc -c -I. -Iproto -DHAVE_CONFIG_H -g -O2 -I/usr/X11R6/include -o objects/buffer.o buffer.c
            > In file included from /usr/X11R6/include/X11/Intrinsic.h:56,
            > from structs.h:76,
            > from vim.h:1351,
            > from buffer.c:29:
            > /usr/X11R6/include/X11/Xlib.h:103: error: conflicting types for `_Xmblen'
            > auto/osdef.h:124: error: previous declaration of `_Xmblen'
            > make[1]: *** [objects/buffer.o] Error 1
            > make[1]: Leaving directory `/tmp/vim62/src'
            > make: *** [first] Error 2

            Please show me the lines in Xlib.h that define _Xmblen(). Also find out
            whether ISC is defined or not.

            osdef2.h.in currently contains:

            #ifdef ISC
            extern int _Xmblen __ARGS((char const *, size_t));
            #else
            extern int _Xmblen __ARGS((char *, size_t));
            #endif

            I can't guess how to change this to make it work on this system.

            An alternative is to try to locate the function prototype, but I've
            already seen one example where #defines get in the way and make it very
            difficult to distinguish a prototype from something else.

            --
            ~
            ~
            ~
            ".signature" 4 lines, 50 characters written

            /// Bram Moolenaar -- Bram@... -- http://www.Moolenaar.net \\\
            /// Creator of Vim - Vi IMproved -- http://www.Vim.org \\\
            \\\ Project leader for A-A-P -- http://www.A-A-P.org ///
            \\\ Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html ///
          • Nam SungHyun
            ... The size_t for this line should be changed to int (like Xlib.h). I use gcc-3.3 and it fixes the compile problem. ... regards, namsh
            Message 5 of 8 , Jan 3, 2004
            • 0 Attachment
              On Sat, 03 Jan 2004 12:50:01 +0100, Bram Moolenaar wrote:
              >
              > Ali Akcaagac wrote:
              >
              > > A Happy new Year to you all. I got a little bugreport which looks like
              > > this (attachment). I was able to solve this by commenting some lines
              > > within the code. Would be cool to have that fixed. System Linux, XFree86
              > > 4.4.0 RC2, Lunix 2.6.0 :)
              > >
              > >
              > > Starting make in the src directory.
              > > If there are problems, cd to the src directory and run make there
              > > cd src && make first
              > > make[1]: Entering directory `/tmp/vim62/src'
              > > gcc -c -I. -Iproto -DHAVE_CONFIG_H -g -O2 -I/usr/X11R6/include -o objects/buffer.o buffer.c
              > > In file included from /usr/X11R6/include/X11/Intrinsic.h:56,
              > > from structs.h:76,
              > > from vim.h:1351,
              > > from buffer.c:29:
              > > /usr/X11R6/include/X11/Xlib.h:103: error: conflicting types for `_Xmblen'
              > > auto/osdef.h:124: error: previous declaration of `_Xmblen'
              > > make[1]: *** [objects/buffer.o] Error 1
              > > make[1]: Leaving directory `/tmp/vim62/src'
              > > make: *** [first] Error 2
              >
              > Please show me the lines in Xlib.h that define _Xmblen(). Also find out
              > whether ISC is defined or not.
              >
              > osdef2.h.in currently contains:
              >
              > #ifdef ISC
              > extern int _Xmblen __ARGS((char const *, size_t));
              > #else
              > extern int _Xmblen __ARGS((char *, size_t));

              The 'size_t' for this line should be changed to 'int' (like Xlib.h).
              I use gcc-3.3 and it fixes the compile problem.

              > #endif
              >
              > I can't guess how to change this to make it work on this system.

              regards,
              namsh
            • Bram Moolenaar
              ... Is that for the first or the second prototype? The reason I used size_t instead of int , is that this was the original prototype that worked well for
              Message 6 of 8 , Jan 4, 2004
              • 0 Attachment
                Nam SungHyun wrote:

                > On Sat, 03 Jan 2004 12:50:01 +0100, Bram Moolenaar wrote:
                > >
                > > Ali Akcaagac wrote:
                > >
                > > > A Happy new Year to you all. I got a little bugreport which looks like
                > > > this (attachment). I was able to solve this by commenting some lines
                > > > within the code. Would be cool to have that fixed. System Linux, XFree86
                > > > 4.4.0 RC2, Lunix 2.6.0 :)
                > > >
                > > >
                > > > Starting make in the src directory.
                > > > If there are problems, cd to the src directory and run make there
                > > > cd src && make first
                > > > make[1]: Entering directory `/tmp/vim62/src'
                > > > gcc -c -I. -Iproto -DHAVE_CONFIG_H -g -O2 -I/usr/X11R6/include -o objects/buffer.o buffer.c
                > > > In file included from /usr/X11R6/include/X11/Intrinsic.h:56,
                > > > from structs.h:76,
                > > > from vim.h:1351,
                > > > from buffer.c:29:
                > > > /usr/X11R6/include/X11/Xlib.h:103: error: conflicting types for `_Xmblen'
                > > > auto/osdef.h:124: error: previous declaration of `_Xmblen'
                > > > make[1]: *** [objects/buffer.o] Error 1
                > > > make[1]: Leaving directory `/tmp/vim62/src'
                > > > make: *** [first] Error 2
                > >
                > > Please show me the lines in Xlib.h that define _Xmblen(). Also find out
                > > whether ISC is defined or not.
                > >
                > > osdef2.h.in currently contains:
                > >
                > > #ifdef ISC
                > > extern int _Xmblen __ARGS((char const *, size_t));
                > > #else
                > > extern int _Xmblen __ARGS((char *, size_t));
                >
                > The 'size_t' for this line should be changed to 'int' (like Xlib.h).
                > I use gcc-3.3 and it fixes the compile problem.

                Is that for the first or the second prototype?

                The reason I used "size_t" instead of "int", is that this was the
                original prototype that worked well for quite a while. Mostly
                sizeof(int) and sizeof(size_t) are equal, but it might cause trouble on
                64 bit machines.

                Is there any preprocessor symbol we could use to know what is the
                correct argument?

                I can't think of an autoconf check for this...

                --
                I'm writing a book. I've got the page numbers done.

                /// Bram Moolenaar -- Bram@... -- http://www.Moolenaar.net \\\
                /// Creator of Vim - Vi IMproved -- http://www.Vim.org \\\
                \\\ Project leader for A-A-P -- http://www.A-A-P.org ///
                \\\ Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html ///
              • Nam SungHyun
                ... I believe you ve already seen this prototype before you made a patch. extern int _Xmblen( #ifdef ISC char const *str, size_t len #else char *str, int len
                Message 7 of 8 , Jan 4, 2004
                • 0 Attachment
                  On Sun, 04 Jan 2004 12:52:23 +0100, Bram Moolenaar wrote:
                  >
                  > Nam SungHyun wrote:
                  >
                  > > On Sat, 03 Jan 2004 12:50:01 +0100, Bram Moolenaar wrote:
                  > > >
                  > > > Ali Akcaagac wrote:
                  > > >
                  > > > > A Happy new Year to you all. I got a little bugreport which looks like
                  > > > > this (attachment). I was able to solve this by commenting some lines
                  > > > > within the code. Would be cool to have that fixed. System Linux, XFree86
                  > > > > 4.4.0 RC2, Lunix 2.6.0 :)
                  > > > >
                  > > > >
                  > > > > Starting make in the src directory.
                  > > > > If there are problems, cd to the src directory and run make there
                  > > > > cd src && make first
                  > > > > make[1]: Entering directory `/tmp/vim62/src'
                  > > > > gcc -c -I. -Iproto -DHAVE_CONFIG_H -g -O2 -I/usr/X11R6/include -o objects/buffer.o buffer.c
                  > > > > In file included from /usr/X11R6/include/X11/Intrinsic.h:56,
                  > > > > from structs.h:76,
                  > > > > from vim.h:1351,
                  > > > > from buffer.c:29:
                  > > > > /usr/X11R6/include/X11/Xlib.h:103: error: conflicting types for `_Xmblen'
                  > > > > auto/osdef.h:124: error: previous declaration of `_Xmblen'
                  > > > > make[1]: *** [objects/buffer.o] Error 1
                  > > > > make[1]: Leaving directory `/tmp/vim62/src'
                  > > > > make: *** [first] Error 2
                  > > >
                  > > > Please show me the lines in Xlib.h that define _Xmblen(). Also find out
                  > > > whether ISC is defined or not.
                  > > >
                  > > > osdef2.h.in currently contains:
                  > > >
                  > > > #ifdef ISC
                  > > > extern int _Xmblen __ARGS((char const *, size_t));
                  > > > #else
                  > > > extern int _Xmblen __ARGS((char *, size_t));
                  > >
                  > > The 'size_t' for this line should be changed to 'int' (like Xlib.h).
                  > > I use gcc-3.3 and it fixes the compile problem.
                  >
                  > Is that for the first or the second prototype?

                  I believe you've already seen this prototype before you made a
                  patch.

                  extern int
                  _Xmblen(
                  #ifdef ISC
                  char const *str,
                  size_t len
                  #else
                  char *str,
                  int len
                  #endif
                  );

                  Regards,
                  namsh
                • Bram Moolenaar
                  ... [...] I now discovered that the prototype for _Xmblen isn t found at all, because the X11 header files are not loaded in osdef.sh. Please try this fix (it
                  Message 8 of 8 , Jan 5, 2004
                  • 0 Attachment
                    Nam SungHyun wrote:

                    > > > On Sat, 03 Jan 2004 12:50:01 +0100, Bram Moolenaar wrote:
                    > > > >
                    > > > > Ali Akcaagac wrote:
                    > > > >
                    > > > > > A Happy new Year to you all. I got a little bugreport which looks like
                    > > > > > this (attachment). I was able to solve this by commenting some lines
                    > > > > > within the code. Would be cool to have that fixed. System Linux, XFree86
                    > > > > > 4.4.0 RC2, Lunix 2.6.0 :)
                    > > > > >
                    > > > > >
                    > > > > > Starting make in the src directory.
                    > > > > > If there are problems, cd to the src directory and run make there
                    > > > > > cd src && make first
                    > > > > > make[1]: Entering directory `/tmp/vim62/src'
                    > > > > > gcc -c -I. -Iproto -DHAVE_CONFIG_H -g -O2 -I/usr/X11R6/include -o objects/buffer.o buffer.c
                    > > > > > In file included from /usr/X11R6/include/X11/Intrinsic.h:56,
                    > > > > > from structs.h:76,
                    > > > > > from vim.h:1351,
                    > > > > > from buffer.c:29:
                    > > > > > /usr/X11R6/include/X11/Xlib.h:103: error: conflicting types for `_Xmblen'
                    > > > > > auto/osdef.h:124: error: previous declaration of `_Xmblen'
                    > > > > > make[1]: *** [objects/buffer.o] Error 1
                    > > > > > make[1]: Leaving directory `/tmp/vim62/src'
                    > > > > > make: *** [first] Error 2

                    [...]

                    I now discovered that the prototype for _Xmblen isn't found at all,
                    because the X11 header files are not loaded in osdef.sh.

                    Please try this fix (it works for me):

                    *** ../vim-6.2.170/src/osdef2.h.in Mon Dec 29 21:17:44 2003
                    --- src/osdef2.h.in Mon Jan 5 10:03:41 2004
                    ***************
                    *** 83,87 ****
                    --- 83,88 ----
                    #ifdef ISC
                    extern int _Xmblen __ARGS((char const *, size_t));
                    #else
                    + /* This is different from the header but matches mblen() */
                    extern int _Xmblen __ARGS((char *, size_t));
                    #endif
                    *** ../vim-6.2.170/src/osdef.sh Thu Jul 24 22:09:03 2003
                    --- src/osdef.sh Mon Jan 5 10:05:41 2004
                    ***************
                    *** 41,46 ****
                    --- 41,50 ----
                    # include <sys/types.h>
                    # include <sys/statfs.h> /* only for memfile.c */
                    #endif
                    +
                    + #ifdef HAVE_X11
                    + # include <X11/Intrinsic.h>
                    + #endif
                    EOF

                    # Mac uses precompiled headers, but we need real headers here.


                    --
                    In a world without fences, who needs Gates and Windows?

                    /// Bram Moolenaar -- Bram@... -- http://www.Moolenaar.net \\\
                    /// Creator of Vim - Vi IMproved -- http://www.Vim.org \\\
                    \\\ Project leader for A-A-P -- http://www.A-A-P.org ///
                    \\\ Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html ///
                  Your message has been successfully submitted and would be delivered to recipients shortly.