assertion "nread == 1" failed: file "lex.l", line 1998

View: New views
3 Messages — Rating Filter:   Alert me  

assertion "nread == 1" failed: file "lex.l", line 1998

by Brad Bell-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Bug report for Octave 2.1.73 configured for i686-pc-cygwin

Description:
-----------

   * The error message above is printed and then Octave aborts the following
     script file:
     =======================================================================
     nTimes = 2;
     nChans = 1;
     center_frequency = 1;
     x                = ones(nTimes, 2*nChans);
     if center_frequency > 0
         sig = zeros( nTimes, nChans );
         for chan = 1:nChans
         sig(:,chan) = complex( x(:,2*chan-1), x(:,2*chan) );
         end
     else
         sig = x;
     end
     ========================================================================

     problem.  Suggestions or general comments are also welcome.

Repeat-By:
---------

   * Step 1: save the file above as junk.m.
   * Step 2: run octave in same directory.
   * Step 3: execute the command "junk".

   * Result: assertion "nread == 1" failed: file "lex.l", line 1998
Fix:
---

   * If possible, replace this item with a description of how to
     fix the problem (if you don't have a fix for the problem, don't
     include this section, but please do submit your report anyway).



Configuration (please do not edit this section):
-----------------------------------------------

uname output:     CYGWIN_NT-5.1 pc-bbell 1.5.25(0.156/4/2) 2008-04-17 12:11 i686 Cygwin
configure opts:   '--build=i686-pc-cygwin' '--srcdir=/home/dad/sources/octave/octave-2.1.73' '--prefix=/usr' '--exec-prefix=/usr' '--sysconfdir=/etc' '--libdir=/usr/lib' '--includedir=/usr/include' '--libexecdir=/usr/lib' '--localstatedir=/var' '--datadir=/usr/share' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--enable-shared' '--disable-static' '--enable-rpath' 'CFLAGS=-O2 -g' 'LDFLAGS=' 'build_alias=i686-pc-cygwin'
Fortran compiler: g77
FFLAGS:           -O -mieee-fp
F2C:
F2CFLAGS:
FLIBS:            -L/usr/lib/gcc-lib/i686-pc-cygwin/3.3.3 -L/usr/lib/gcc-lib/i686-pc-cygwin/3.3.3/../../.. -lm -lfrtbegin -lg2c -lcygwin -luser32 -lkernel32 -ladvapi32 -lshell32
CPPFLAGS:
INCFLAGS:         -I. -I/home/dad/sources/octave/octave-2.1.73 -I. -I./liboctave -I./src -I./libcruft/misc -I/home/dad/sources/octave/octave-2.1.73 -I/home/dad/sources/octave/octave-2.1.73/liboctave -I/home/dad/sources/octave/octave-2.1.73/src -I/home/dad/sources/octave/octave-2.1.73/libcruft/misc
C compiler:       gcc, version 3.3.3 (cygwin special)
CFLAGS:           -O2 -g
CPICFLAG:
C++ compiler:     g++, version 3.3.3
CXXFLAGS:         -g -O2
CXXPICFLAG:
LD_CXX:           g++
LDFLAGS:
LIBFLAGS:         -L.
RLD_FLAG:
BLAS_LIBS:        -llapack -lblas
FFTW_LIBS:        -lfftw3
LIBS:             -lreadline  -lncurses -lwsock32 -lm
LEXLIB:
LIBPLPLOT:
LIBDLFCN:
LIBGLOB:          %OCTAVE_CONF_LIBGLOB%
SED:              /usr/bin/sed
DEFS:

   -DPACKAGE_NAME="" -DPACKAGE_TARNAME="" -DPACKAGE_VERSION=""
   -DPACKAGE_STRING="" -DPACKAGE_BUGREPORT="" -DOCTAVE_SOURCE=1
   -D_GNU_SOURCE=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1
   -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
   -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DSEPCHAR=1
   -DSEPCHAR_STR=":" -D__NO_MATH_INLINES=1 -DCXX_NEW_FRIEND_TEMPLATE_DECL=1
   -DCXX_ISO_COMPLIANT_LIBRARY=1 -DCXX_ABI=gnu_v3 -DHAVE_LIBM=1
   -DHAVE_FFTW3=1 -DHAVE_IEEE754_DATA_FORMAT=1 -DF77_FUNC(name,NAME)=name ##
   _ -DF77_FUNC_(name,NAME)=name ## __ -DHAVE_BLAS=1 -DHAVE_GETHOSTNAME=1
   -DHAVE_GETPWNAM=1 -DHAVE_LIBWSOCK32=1 -DHAVE_DEV_T=1 -DHAVE_INO_T=1
   -DHAVE_NLINK_T=1 -DHAVE_NLINK_T=1 -DHAVE_LONG_LONG_INT=1
   -DHAVE_UNSIGNED_LONG_LONG_INT=1 -DHAVE_SIGSET_T=1 -DHAVE_SIG_ATOMIC_T=1
   -DSIZEOF_SHORT=2 -DSIZEOF_INT=4 -DSIZEOF_LONG=4 -DSIZEOF_LONG_LONG=8
   -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DNPOS=std::string::npos
   -DHAVE_PLACEMENT_DELETE=1 -DHAVE_DYNAMIC_AUTO_ARRAYS=1 -DSTDC_HEADERS=1
   -DHAVE_DIRENT_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_SYS_WAIT_H=1
   -DHAVE_ASSERT_H=1 -DHAVE_CURSES_H=1 -DHAVE_DLFCN_H=1 -DHAVE_FCNTL_H=1
   -DHAVE_FLOAT_H=1 -DHAVE_GRP_H=1 -DHAVE_IEEEFP_H=1 -DHAVE_LIMITS_H=1
   -DHAVE_MEMORY_H=1 -DHAVE_NCURSES_H=1 -DHAVE_POLL_H=1 -DHAVE_PWD_H=1
   -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_IOCTL_H=1
   -DHAVE_SYS_PARAM_H=1 -DHAVE_SYS_POLL_H=1 -DHAVE_SYS_RESOURCE_H=1
   -DHAVE_SYS_SELECT_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TIME_H=1
   -DHAVE_SYS_TIMES_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_UTSNAME_H=1
   -DHAVE_TERMCAP_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SSTREAM=1 -DHAVE_TERMIO_H=1
   -DHAVE_ATEXIT=1 -DHAVE_BASENAME=1 -DHAVE_BCOPY=1 -DHAVE_BZERO=1
   -DHAVE_DUP2=1 -DHAVE_ENDGRENT=1 -DHAVE_ENDPWENT=1 -DHAVE_EXECVP=1
   -DHAVE_FCNTL=1 -DHAVE_FORK=1 -DHAVE_GETCWD=1 -DHAVE_GETEGID=1
   -DHAVE_GETEUID=1 -DHAVE_GETGID=1 -DHAVE_GETGRENT=1 -DHAVE_GETGRGID=1
   -DHAVE_GETGRNAM=1 -DHAVE_GETPGRP=1 -DHAVE_GETPID=1 -DHAVE_GETPPID=1
   -DHAVE_GETPWENT=1 -DHAVE_GETPWUID=1 -DHAVE_GETTIMEOFDAY=1 -DHAVE_GETUID=1
   -DHAVE_GETWD=1 -DHAVE_KILL=1 -DHAVE_LINK=1 -DHAVE_LOCALTIME_R=1
   -DHAVE_LSTAT=1 -DHAVE_MEMMOVE=1 -DHAVE_MKDIR=1 -DHAVE_MKFIFO=1
   -DHAVE_MKSTEMP=1 -DHAVE_ON_EXIT=1 -DHAVE_PIPE=1 -DHAVE_POLL=1
   -DHAVE_PUTENV=1 -DHAVE_RAISE=1 -DHAVE_READLINK=1 -DHAVE_RENAME=1
   -DHAVE_RINDEX=1 -DHAVE_RMDIR=1 -DHAVE_ROUND=1 -DHAVE_SELECT=1
   -DHAVE_SETGRENT=1 -DHAVE_SETPWENT=1 -DHAVE_SETVBUF=1 -DHAVE_SIGACTION=1
   -DHAVE_SIGPENDING=1 -DHAVE_SIGPROCMASK=1 -DHAVE_SIGSUSPEND=1 -DHAVE_STAT=1
   -DHAVE_STRCASECMP=1 -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRFTIME=1
   -DHAVE_STRNCASECMP=1 -DHAVE_STRPTIME=1 -DHAVE_SYMLINK=1 -DHAVE_TEMPNAM=1
   -DHAVE_UMASK=1 -DHAVE_UNLINK=1 -DHAVE_USLEEP=1 -DHAVE_VFPRINTF=1
   -DHAVE_VSPRINTF=1 -DHAVE_VSNPRINTF=1 -DHAVE_WAITPID=1 -DHAVE_DLOPEN=1
   -DHAVE_DLSYM=1 -DHAVE_DLERROR=1 -DHAVE_DLCLOSE=1 -DHAVE_DLOPEN_API=1
   -DENABLE_DYNAMIC_LINKING=1 -DHAVE_TIMEVAL=1 -DHAVE_FINITE=1
   -DHAVE_ISNAN=1 -DHAVE_ISINF=1 -DHAVE_COPYSIGN=1 -DHAVE_DECL_SIGNBIT=1
   -DHAVE_ACOSH=1 -DHAVE_ASINH=1 -DHAVE_ATANH=1 -DHAVE_ERF=1 -DHAVE_ERFC=1
   -DHAVE_STRUCT_STAT_ST_BLKSIZE=1 -DHAVE_STRUCT_STAT_ST_BLOCKS=1
   -DHAVE_STRUCT_STAT_ST_RDEV=1 -DHAVE_TZNAME=1 -DUSE_READLINE=1
   -DEXCEPTION_IN_MATH=1 -DRETSIGTYPE=void -DHAVE_DECL_SYS_SIGLIST=0
   -DHAVE_POSIX_SIGNALS=1 -DHAVE_GETRUSAGE=1 -DHAVE_TIMES=1
   -DRUSAGE_TIMES_ONLY=1 -DYYTEXT_POINTER=1 -DGNUPLOT_BINARY="gnuplot"
   -DGNUPLOT_HAS_FRAMES=
_______________________________________________
Bug-octave mailing list
Bug-octave@...
https://www.cae.wisc.edu/mailman/listinfo/bug-octave

assertion "nread == 1" failed: file "lex.l", line 1998

by John W. Eaton :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 28-Apr-2008, Brad Bell wrote:

| Bug report for Octave 2.1.73 configured for i686-pc-cygwin
|
| Description:
| -----------
|
|    * The error message above is printed and then Octave aborts the following
|      script file:
|      =======================================================================
|      nTimes = 2;
|      nChans = 1;
|      center_frequency = 1;
|      x                = ones(nTimes, 2*nChans);
|      if center_frequency > 0
|          sig = zeros( nTimes, nChans );
|          for chan = 1:nChans
|          sig(:,chan) = complex( x(:,2*chan-1), x(:,2*chan) );
|          end
|      else
|          sig = x;
|      end
|      ========================================================================
|
|      problem.  Suggestions or general comments are also welcome.
|
| Repeat-By:
| ---------
|
|    * Step 1: save the file above as junk.m.
|    * Step 2: run octave in same directory.
|    * Step 3: execute the command "junk".
|
|    * Result: assertion "nread == 1" failed: file "lex.l", line 1998

I'm unable to reproduce the problem with Octave 2.1.73 or Octave 3.0.

Since there is something funny going on with the lexer, it would
probably be best to send the file as a binary attachment in case there
are some funny characters in your copy of the file that are not making
it through when you paste it into a mail message.  But in any case,
Octave 2.1.73 is obsolete.  I strongly encourage you to upgrade to the
latest stable release, 3.0.1.  If the problem persists after
upgrading, then please submit another report.

jwe
_______________________________________________
Bug-octave mailing list
Bug-octave@...
https://www.cae.wisc.edu/mailman/listinfo/bug-octave

Re: assertion "nread == 1" failed: file "lex.l", line 1998

by Brad Bell-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


The bug is happening under cygwin and, to keep things simple, I have just
used the standard cygwin download with all the packages (octave as one of
them). I did this very recently. If you think I should not have any
trouble downloading and installiing the new version in this environment, I
will try it.

I have attached a verison of the file to this mail message.
----------------------------------------
Brad@pc-bbell ~/trash
$ cat junk.m
n   = 2;
m   = 1;
x   = ones(n, 2*m);
s   = zeros( n, m );
for i = 1:m
    s(:,i) = complex( x(:,2*i-1), x(:,2*i) );
end
------------------------------------------
Here is an octal dump of the file
------------------------------------------
Brad@pc-bbell ~/trash
$ od -c junk.m
0000000   n               =       2   ;  \n   m               =       1
0000020   ;  \n   x               =       o   n   e   s   (   n   ,
0000040   2   *   m   )   ;  \n   s               =       z   e   r   o
0000060   s   (       n   ,       m       )   ;  \n   f   o   r       i
0000100       =       1   :   m  \n               s   (   :   ,   i   )
0000120       =       c   o   m   p   l   e   x   (       x   (   :   ,
0000140   2   *   i   -   1   )   ,       x   (   :   ,   2   *   i   )
0000160       )   ;  \n   e   n   d  \n  \n
0000171
--------------------------------------------
Here is the result of running the script under octave
---------------------------------------------
Brad@pc-bbell ~/trash
$ octave junk.m
GNU Octave, version 2.1.73 (i686-pc-cygwin).
Copyright (C) 2006 John W. Eaton.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTIBILITY or
FITNESS FOR A PARTICULAR PURPOSE.  For details, type `warranty'.

Additional information about Octave is available at http://www.octave.org.

Please contribute if you find this software useful.
For more information, visit http://www.octave.org/help-wanted.html

Report bugs to <bug@...> (but first, please read
http://www.octave.org/bugs.html to learn how to write a helpful report).

assertion "nread == 1" failed: file "lex.l", line 1998
Aborted (core dumped)
---------------------------------------------------------------------------
On Tue, 6 May 2008, John W. Eaton wrote:

> On 28-Apr-2008, Brad Bell wrote:
>
> | Bug report for Octave 2.1.73 configured for i686-pc-cygwin
> |
> | Description:
> | -----------
> |
> |    * The error message above is printed and then Octave aborts the following
> |      script file:
> |      =======================================================================
> |      nTimes = 2;
> |      nChans = 1;
> |      center_frequency = 1;
> |      x                = ones(nTimes, 2*nChans);
> |      if center_frequency > 0
> |          sig = zeros( nTimes, nChans );
> |          for chan = 1:nChans
> |          sig(:,chan) = complex( x(:,2*chan-1), x(:,2*chan) );
> |          end
> |      else
> |          sig = x;
> |      end
> |      ========================================================================
> |
> |      problem.  Suggestions or general comments are also welcome.
> |
> | Repeat-By:
> | ---------
> |
> |    * Step 1: save the file above as junk.m.
> |    * Step 2: run octave in same directory.
> |    * Step 3: execute the command "junk".
> |
> |    * Result: assertion "nread == 1" failed: file "lex.l", line 1998
>
> I'm unable to reproduce the problem with Octave 2.1.73 or Octave 3.0.
>
> Since there is something funny going on with the lexer, it would
> probably be best to send the file as a binary attachment in case there
> are some funny characters in your copy of the file that are not making
> it through when you paste it into a mail message.  But in any case,
> Octave 2.1.73 is obsolete.  I strongly encourage you to upgrade to the
> latest stable release, 3.0.1.  If the problem persists after
> upgrading, then please submit another report.
>
> jwe
>
n   = 2;
m   = 1;
x   = ones(n, 2*m);
s   = zeros( n, m );
for i = 1:m
   s(:,i) = complex( x(:,2*i-1), x(:,2*i) );
end


_______________________________________________
Bug-octave mailing list
Bug-octave@...
https://www.cae.wisc.edu/mailman/listinfo/bug-octave