Paolo Redaelli | 12 Aug 09:38

Wrapping unions

Are unions accessible like structures using externals?
For example:

#include <stdlib.h>

union unione {
	int intero;
	void *puntatore;
};

union unione *get_unione () {
	return (union unione *) malloc(sizeof(union unione));
};

could be accessed with?

	intero (ptr: POINTER): INTEGER is
		external "[
			C union unione get intero use "unione.h"
			]"
		end

	puntatore (ptr: POINTER): POINTER is
		external "[
			C union unione get puntatore use "unione.h"
			]"
		end

As far as I can say it is not possible. 
I know that I circumvent the problem writing come C macros or inline
(Continue reading)

fmsalter | 8 Aug 15:07

Current Snapshot (18 July 2008) - Eiffeldoc - signal 11 failure

If I'm telling you what you already know, please ignore this.
The current snapshot's eiffeldoc fails with a signal 11 failure!
It was compiled using gcc 4.1.2 without optimisation (-O0).

Regards
Frank Salter

Jörgen Tegnér | 25 Jul 08:34

Troubles getting reverse assignment right

Hi list,

I have troubles with reverse assignment and would appreciate some
advice.

class GENERAL_VECTOR[E_->NUMERIC]
	inherit ARRAY[E_]

class REAL_VECTOR_32
	inherit GENERAL_VECTOR[REAL_32]

class REAL_VECTOR_64
	inherit GENERAL_VECTOR[REAL_64]

In GENERAL_VECTOR I want to find out the correct type of E_, REAL_32 or
REAL_64, to call the correct function with the correct live type. One
unelegant solution that kind of works:

anchor:E_
...
inspect Current.anchor.generating_type
	when "REAL_32" then
		debug io.put_string("REAL_32 version of axpy%N") end
		f_saxpy($n,$alpha,p1,$ldx,p2,$ldy)
	when "REAL_64" then
		debug io.put_string("REAL_64 version of axpy%N") end
		f_daxpy($n,$alpha,p1,$ldx,p2,$ldy)
	end

Above code works and gives the correct results.
(Continue reading)

Jean-Bernard Addor | 23 Jul 13:29

debian 4.0 installation tentative

Hello,

I am not sure if I used the correct environment variables to compile
SE. I do not remember how to set up the loadpath. I did it again with
the version of July 18th and obtained similar results for loadpath and
configure.

May I send you some notes I took while trying to compile SE 2.3 and
snapshot?

Have a nice day,

Jean-Bernard

READ_ME.txt

jbaddor <at> truite:/home/ltmp/smarteiffel-dev/SmartEiffel$ pwd
/home/ltmp/smarteiffel-dev/SmartEiffel

add in .bashrc : 
export PATH=/home/ltmp/smarteiffel-dev/SmartEiffel/bin:${PATH} 
cd your/installation/directory; cd SmartEiffel; ./configure 
... 
checking vfork.h usability... no 
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
(Continue reading)

Jörgen Tegnér | 21 Jul 23:26

Result not assigned

Hi list,

the code below compiles fine with SmartEiffel. Obviously it's a bug in
that I forgot to assign anything to Result. Shouldn't the compiler warn
or abort when compiling this code?

class A
creation {ANY}
	make
feature {ANY}
	make is
		local
			b: BOOLEAN
		do
			b := hmmm
		end
	hmmm: BOOLEAN is
		do
		end
end -- class A

Jörgen
--

-- 
I'm kinda looking forward to the alzheimer's... I'll get to meet new
people every day. I'll never have take the blame for anything. I'll get
to meet new people every day.

Jörgen Tegnér | 17 Jul 12:42

Bug in short

Hi list,

teg <at> burken:~$ /usr/lib/smarteiffel2/bin/short -version
Version of command "short" is:
SmartEiffel The GNU Eiffel Compiler, Eiffel tools and libraries
Release 2.3 (Thursday July 11th 2007) [Antoine-Auguste Parmentier]
Copyright (C), 1994-2002 - INRIA - LORIA - ESIAL UHP Nancy 1 - FRANCE
Copyright (C), 2003-2005 - INRIA - LORIA - IUT Charlemagne Nancy 2 -
FRANCE
D.COLNET, P.RIBET, C.ADRIAN, V.CROIZIER F.MERIZEN - SmartEiffel <at> loria.fr
http://SmartEiffel.loria.fr

The installation is from debian/sid.

Simply, short TUPLE crashed. Output is attached.

Now I'm rebuilding with check_all but it seems to take some time to
finish. Is the above known,
or should I let the rebuild finish to be able to get some details on the
crash?

Jörgen
--

-- 
I'm kinda looking forward to the alzheimer's... I'll get to meet new
people every day. I'll never have take the blame for anything. I'll get
to meet new people every day.
Reading loadpath files
Trying to read file "/usr/share/doc/smarteiffel2/tutorial/loadpath.se".
(Continue reading)

Helmut Brandl | 15 Jul 17:57

[Fwd: Re: Problems installing 2.3]

Sorry, I have just pressed the reply botton. So my message did not show 
up in the mailing list.

-------- Original Message --------
Subject: 	Re: Problems installing 2.3
Date: 	Tue, 15 Jul 2008 10:17:10 -0500
From: 	Helmut Brandl <helmut.brandl <at> gmx.net>
To: 	fmsalter <at> blueyonder.co.uk
References: 	<487B6F94.2010109 <at> gmx.net> 
<1706.62.31.125.197.1216130166.VkIUQmtaS0l5RB0W.squirrel <at> 62.31.125.197> 
<487CB30E.5060502 <at> gmx.net> 
<62347.62.31.125.197.1216133994.VkIUQmtaS0l5RB0W.squirrel <at> 62.31.125.197>

Where do I change this flag?

fmsalter <at> blueyonder.co.uk wrote:
> It is only an optimisation bug.  Change the gcc -Os flag to -O1 for
> SmartEiffel and compile as before.  That should solve your problem.
>
> Regards
> Frank Salter
>
>   
>> I have gcc version 4.2.1. What can I do to get SmartEiffel installed
>> properly. Is there a bug in gcc?
>>
>> Is there a possibility to avoid this problem?
>>
>> Helmut
>>
(Continue reading)

fmsalter | 15 Jul 16:59

Re: Problems installing 2.3

It is only an optimisation bug.  Change the gcc -Os flag to -O1 for
SmartEiffel and compile as before.  That should solve your problem.

Regards
Frank Salter

> I have gcc version 4.2.1. What can I do to get SmartEiffel installed
> properly. Is there a bug in gcc?
>
> Is there a possibility to avoid this problem?
>
> Helmut
>
> fmsalter <at> blueyonder.co.uk wrote:
>> This appears to be the gcc optimisation problem!
>> See my email of 20 May!
>> If I remember correctly, this applies to all gcc versions from 4.2.0
>> onwards!
>> Regards
>> Frank Salter

Helmut Brandl | 14 Jul 17:21

Problems installing 2.3

I have problems to install SmartEiffel on my Linux System. I have 
unpacked SmartEiffel, put the SmartEiffel/bin directory into my PATH 
variable and started in a fresh shell (which has the extended PATH) the 
installation make all. Below is the output I have got. After a failed a 
system call, the make script entered into an endless loop.

I tried to execute compile_to_c without arguments. I have got

   helmut <at> lapi:~/programs/SmartEiffel> compile_to_c
   Received signal 11.
   Eiffel program crash at run time.
   No trace when using option "-boost"

Can anybody help?

Regards
Helmut Brandl

Hello!

Thank you for choosing SmartEiffel.

I'm here to help you install your software. Many default options have 
been set
for you; the simplest way to install SmartEiffel is to keep pressing the
<Enter> key as long as I ask anything.

Of course you can change the options I set; it's just a matter of 
chosing items
in the menus, and you'll see you can greatly customize your SmartEiffel
(Continue reading)

Hendrik Boom | 12 Jul 19:46

version 2.3 fails to install.

I probably did something wrong.  I unpacked SmartEiffel-2-3.tar.bz2 into
/usr/local/SmartEiffel, inserted
  export PATH=your/installation/directory/SmartEiffel/bin:$PATH
into my .bashrc file, started up a new terminal, cd'd to
/usr/local/SmartEiffed, and typed
  make all

I got 

hendrik <at> april:/usr/local/SmartEiffel$ make all

Bootstrapping compile_to_c from the subversion germ
    OK

Building the compiler
./compile_to_c failed with status 1
Please look at /usr/local/SmartEiffel/make_release.log
cat: ./compile_to_c.make: No such file or directory
cat: ./compile_to_c.make: No such file or directory
./compile_to_c failed with status 1
Please look at /usr/local/SmartEiffel/make_release.log
cat: ./compile.make: No such file or directory
cat: ./compile.make: No such file or directory
./compile_to_c failed with status 1
Please look at /usr/local/SmartEiffel/make_release.log
cat: ./clean.make: No such file or directory
cat: ./clean.make: No such file or directory
./clean failed with status 127
Please look at /usr/local/SmartEiffel/make_release.log
./clean failed with status 127
(Continue reading)

Miguel Ojeda | 25 Jun 23:22

Bug report

Hi!

I'm new to the list. I'm a Spanish C.S. student interested in SmartEiffel.

When I was trying to compile 2.3's tutorial/net/multiplex_server.e,
the compiler returned the following:

	****** Fatal Error: Unknown feature `unset_timeout' in type
SOCKET_INPUT_OUTPUT_STREAM.
	(For this call, the target `a_io' is of type SOCKET_INPUT_OUTPUT_STREAM.)

	The source lines involved by the message are the following:

	Line 55 columns 4, 9 in MULTIPLEX_CONNECTION
(/home/max/Desktop/SmartEiffel/tutorial/net/multiplex_connection.e):
		 a_io.unset_timeout
		 ^    ^
	------
	Error occurs while compiling. Compilation process aborted.

In addition, I noticed that r8141 changed such file (along with others):
Author: cadrian
	Date: 2007-01-27 03:44:04 +0000 (Sat, 27 Jan 2007)
	New Revision: 8141

	Modified:
	   trunk/lib/io/input_stream.e
	   trunk/lib/io/low_level/input_stream_tools.e
	   trunk/lib/io/terminal/text_file_read.e
	   trunk/lib/net/low_level/socket.e
(Continue reading)


Gmane