[Commit] nickle ChangeLog, 1.128, 1.129 builtin-sockets.c, 1.16, 1.17 compile.c, 1.162, 1.163 nickle.spec.in, 1.1, 1.2

Keith Packard commit at keithp.com
Fri Jul 8 22:46:57 PDT 2005


Committed by: keithp

Update of /local/src/CVS/nickle
In directory home.keithp.com:/tmp/cvs-serv10671

Modified Files:
	ChangeLog builtin-sockets.c compile.c nickle.spec.in 
Log Message:
2005-07-08  Keith Packard  <keithp at keithp.com>

	* builtin-sockets.c: (do_Socket_connect):
	Set SO_BROADCAST just in case
	
	* compile.c: (CompileCall):
	CompileCall with auto_reference == True must not
	return a pointer to the return type as this function
	is called from CompileLvalue which is defined to return
	the type of the underlying object, not a pointer to
	that type. The alternative is to return a reference type,
	and I'm fairly sure that's not right as & is supposed
	to return a pointer type, not a reference type, right?
	
	* nickle.spec.in:
	Make sure the nickle headers are installed
	
	* test/Makefile.am:
	* test/reftest.5c:
	Add a test for reference types which checks the above
	change


Index: ChangeLog
===================================================================
RCS file: /local/src/CVS/nickle/ChangeLog,v
retrieving revision 1.128
retrieving revision 1.129
diff -u -d -r1.128 -r1.129
--- ChangeLog	16 Jun 2005 20:55:50 -0000	1.128
+++ ChangeLog	9 Jul 2005 05:46:53 -0000	1.129
@@ -1,3 +1,25 @@
+2005-07-08  Keith Packard  <keithp at keithp.com>
+
+	* builtin-sockets.c: (do_Socket_connect):
+	Set SO_BROADCAST just in case
+	
+	* compile.c: (CompileCall):
+	CompileCall with auto_reference == True must not
+	return a pointer to the return type as this function
+	is called from CompileLvalue which is defined to return
+	the type of the underlying object, not a pointer to
+	that type. The alternative is to return a reference type,
+	and I'm fairly sure that's not right as & is supposed
+	to return a pointer type, not a reference type, right?
+	
+	* nickle.spec.in:
+	Make sure the nickle headers are installed
+	
+	* test/Makefile.am:
+	* test/reftest.5c:
+	Add a test for reference types which checks the above
+	change
+
 2005-06-16  Keith Packard  <keithp at keithp.com>
 version 2.48
 

Index: builtin-sockets.c
===================================================================
RCS file: /local/src/CVS/nickle/builtin-sockets.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -d -r1.16 -r1.17
--- builtin-sockets.c	11 Dec 2004 06:02:23 -0000	1.16
+++ builtin-sockets.c	9 Jul 2005 05:46:54 -0000	1.17
@@ -223,6 +223,13 @@
 	int n, err;
 	flags |= O_NONBLOCK;
 	fcntl (s->file.fd, F_SETFL, flags);
+#ifdef SO_BROADCAST
+	{
+	    int one = 1;
+	    setsockopt (s->file.fd, SOL_SOCKET, SO_BROADCAST,
+			(char *) &one, sizeof (int));
+	}
+#endif
 	n = connect (s->file.fd, (struct sockaddr *) &addr, sizeof addr);
 	flags &= ~O_NONBLOCK;
 	fcntl (s->file.fd, F_SETFL, flags);

Index: compile.c
===================================================================
RCS file: /local/src/CVS/nickle/compile.c,v
retrieving revision 1.162
retrieving revision 1.163
diff -u -d -r1.162 -r1.163
--- compile.c	16 Jun 2005 20:48:33 -0000	1.162
+++ compile.c	9 Jul 2005 05:46:54 -0000	1.163
@@ -1150,7 +1150,13 @@
 	{
 	    BuildInst (obj, OpUnFunc, inst, stat);
 	    inst->unfunc.func = do_reference;
-	    expr->base.type = NewTypeRef (expr->base.type, True);
+	    /* 
+	     * this is called from CompileLvalue which
+	     * must return a value of the type pointed to, not the
+	     * type of the object itself, so don't create a pointer
+	     * type here. Someday we'll figure all of this out...
+	     */
+/*	    expr->base.type = NewTypeRef (expr->base.type, True); */
 	}
 	else
 	    BuildInst (obj, OpNoop, inst, stat);

Index: nickle.spec.in
===================================================================
RCS file: /local/src/CVS/nickle/nickle.spec.in,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- nickle.spec.in	1 Apr 2004 19:49:56 -0000	1.1
+++ nickle.spec.in	9 Jul 2005 05:46:54 -0000	1.2
@@ -40,6 +40,8 @@
 %dir %{_datadir}/nickle
 %{_mandir}/man1/nickle.1*
 %{_datadir}/nickle/*
+%dir %{_includedir}/nickle
+%{_includedir}/nickle/*
 
 %clean
 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT




More information about the Commit mailing list