[Barrelfish-users] Interface types

Georgios Varisteas yorgos at kth.se
Wed Nov 2 17:34:12 CET 2011


Hi Andrew,

Here is a sample:

interface bdis "BDIS interface" {

	typedef struct {
		uint8 f1;
		uint8 f2;
	} mytype;

	message mymsg(uint8 arg1[99]);
}

The typedef will result in the following error:

./tools/bin/flounder -i ../src/if/platform/x86_64.if -i ../src/if/arch/x86_64.if -i ../src/if/types.if --generic-header ../src/if/bdis.if ./x86_64/include/if/bdis_defs.h
Parse error at: "../src/if/bdis.if" (line 11, column 9):
unexpected "t"
expecting "alias", identifier, "message", "call", "response" or "rpc"
make: *** [x86_64/include/if/bdis_defs.h] Error 1

the mentioned "t" is the first letter t of the keyword "typedef"



Removing the typedef will result in the following error:

./tools/bin/flounder -i ../src/if/platform/x86_64.if -i ../src/if/arch/x86_64.if -i ../src/if/types.if --generic-header ../src/if/bdis.if ./x86_64/include/if/bdis_defs.h
Parse error at: "../src/if/bdis.if" (line 26, column 39):
unexpected "["
expecting letter or digit, "," or ")"

Again the mentioned "[" is the first bracket of the argument array.

It is like both typedef and array arguments are not supported by the version of flounder in the PUBLIC repository, which is the one I'm using.

However, the docs say exactly the opposite if you take a look at TN-011-IDC.pdf pages 6 to 8.

I hope we can find a solution, cause I'm at a standstill because of this.

regards,
Georgios Varisteas

________________________________________
From: Baumann  Andrew [andrewb at inf.ethz.ch]
Sent: Wednesday, November 02, 2011 17:23
To: Georgios Varisteas; barrelfish-users at lists.inf.ethz.ch
Subject: RE: Interface types

Hi Georgios,

I'm not sure what you're trying to do here. Could you also send the relevant parts of bdis.if?

Andrew

> -----Original Message-----
> From: Georgios Varisteas [mailto:yorgos at kth.se]
> Sent: Wednesday, 2 November 2011 13:58
> To: barrelfish-users at lists.inf.ethz.ch
> Subject: [Barrelfish-users] Interface types
>
> Hi,
>
> I'm trying to create an interface (*.if) file and it seems that the
> documentation is contrasting the version of flounder in the repository.
> Specifically I get error messages like the following when I try to use typedef
> and arrays:
>
> ./tools/bin/flounder -i ../src/if/platform/x86_64.if -i ../src/if/arch/x86_64.if -i
> ../src/if/types.if --generic-header ../src/if/bdis.if
> ./x86_64/include/if/bdis_defs.h
> Parse error at: "../src/if/bdis.if" (line 26, column 39):
> unexpected "["
> expecting letter or digit, "," or ")"
>
> ./tools/bin/flounder -i ../src/if/platform/x86_64.if -i ../src/if/arch/x86_64.if -i
> ../src/if/types.if --generic-header ../src/if/bdis.if
> ./x86_64/include/if/bdis_defs.h
> Parse error at: "../src/if/bdis.if" (line 11, column 9):
> unexpected "t"
> expecting "alias", identifier, "message", "call", "response" or "rpc"
> make: *** [x86_64/include/if/bdis_defs.h] Error 1
>
> I really need to have some complex types in the messages, so how can I fix
> this?
>
> cheers,
> Georgios Varisteas
> _______________________________________________
> Barrelfish-users mailing list
> Barrelfish-users at lists.inf.ethz.ch
> https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users



More information about the Barrelfish-users mailing list