help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Redhat 7.0 and octave


From: John W. Eaton
Subject: Re: Redhat 7.0 and octave
Date: Tue, 28 Nov 2000 22:33:07 -0600

On 28-Nov-2000, Trond Eivind =?iso-8859-1?Q?Glomsr=D8d?= <address@hidden> wrote:

| When I last tried to build octave 2.0 with the new compilers, the
| problems were illegal use of keywords as enums and macro magic.

2.0 is dead as far as any future development goes, so it doesn't
really matter much, but I am interested in fixing any real problems in
the 2.1.x sources.

| ../liboctave/MArray-defs.h:199:30: warning: "MARRAY_BINOP_FWD_DEFS"
| redefined
| ../liboctave/MArray-defs.h:199:1: warning: this is the location of the
| previous definition
| ../liboctave/MArray-defs.h:205:33: warning: "MARRAY_AA_BINOP_FWD_DEFS"
| redefined
| ../liboctave/MArray-defs.h:205:1: warning: this is the location of the
| previous definition
| ../liboctave/MArray-defs.h:277:28: warning: "MARRAY_FORWARD_DEFS"
| redefined
| ../liboctave/MArray-defs.h:277:1: warning: this is the location of the
| previous definition

Perhaps a fix for the multiple definition warnings is the following patch:

Index: MArray-defs.h
===================================================================
RCS file: /usr/local/cvsroot/octave/liboctave/MArray-defs.h,v
retrieving revision 1.8
diff -u -r1.8 MArray-defs.h
--- MArray-defs.h       2000/03/31 06:02:44     1.8
+++ MArray-defs.h       2000/11/29 04:25:58
@@ -1,3 +1,6 @@
+#if !defined (octave_MArray_defs_h)
+#define octave_MArray_defs_h 1
+
 // Nothing like a little CPP abuse to brighten everyone's day.
 
 #define DO_VS_OP(r, l, v, OP, s) ŠÜ
@@ -313,3 +316,4 @@
 
 // Now we have all the definitions we need.
 
+#endif


| In file included from defun.h:30,
|                  from builtins.cc:7:
| defun-int.h:163:3: warning: nothing can be pasted after this token

Here are lines 162 and 163 of defun-int.h from 2.1.31:

#define UNDERSCORIFY(name) ŠÜ
  "__" ## name ## "__"

I don't see anything wrong with this macro definition.  Can you
explain what the problem is?

| input.cc:1095:1: #line may not be used inside a macro argument
| input.cc:1094:46: unterminated argument list for macro "XDEFUN_INTERNAL"

These lines are at the very end of the source file.  Can you explain
what is going on here?

| load-save.cc:3121:1: #line may not be used inside a macro argument
| load-save.cc:3120:38: unterminated argument list for macro "XDEFUN_INTERNAL"

These lines are in the middle of the doc string for the load function,
but I don't see anything wrong with it.  Can you explain what the
trouble is?

The Octave sources do not include any #line directives (the ones in
parse.cc and lex.cc are inserted by bison and flex, respctively), so
my guess is that the compiler must be adding them incorrectly.

| make[2]: *** [builtins.o] Error 1
| make[2]: Leaving directory `/usr/src/teg/octave-2.1.31/src'
| make[1]: *** [src] Error 2
| make[1]: Leaving directory `/usr/src/teg/octave-2.1.31'
| make: *** [all] Error 2
| ************************************************************************

Are you sure these aren't compiler bugs?

At the very least, the line numbers don't appear to be helpful to me
when I am looking at the 2.1.31 sources.

If you can explain how these problems are due to bugs in the Octave
sources, then perhaps they can be fixed.

Thanks,

jwe



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------



reply via email to

[Prev in Thread] Current Thread [Next in Thread]