guix-commits
[Top][All Lists]
Advanced

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

01/03: syscalls: Wrap TCSA* constants in 'tcsetattr-action' macro.


From: Ludovic Courtès
Subject: 01/03: syscalls: Wrap TCSA* constants in 'tcsetattr-action' macro.
Date: Tue, 03 May 2016 15:45:42 +0000

civodul pushed a commit to branch master
in repository guix.

commit a8f3424b25cbbc585126420bcc1434c4a2398588
Author: Ludovic Courtès <address@hidden>
Date:   Mon May 2 08:59:57 2016 +0200

    syscalls: Wrap TCSA* constants in 'tcsetattr-action' macro.
    
    * guix/build/syscalls.scm (tcsetattr-action): New macro.
    (TCSANOW, TCSADRAIN, TCSAFLUSH): Remove.
    (tcsetattr): Adjust docstring accordingly.
    * tests/syscalls.scm ("tcsetattr"): Adjust accordingly.
---
 guix/build/syscalls.scm |   16 ++++++++--------
 tests/syscalls.scm      |    2 +-
 2 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/guix/build/syscalls.scm b/guix/build/syscalls.scm
index 4e543d7..a9cd6e9 100644
--- a/guix/build/syscalls.scm
+++ b/guix/build/syscalls.scm
@@ -110,9 +110,7 @@
             termios-input-speed
             termios-output-speed
             local-flags
-            TCSANOW
-            TCSADRAIN
-            TCSAFLUSH
+            tcsetattr-action
             tcgetattr
             tcsetattr
 
@@ -1059,9 +1057,11 @@ given an integer, returns the list of names of the 
constants that are or'd."
  (define EXTPROC #o0200000))
 
 ;; "Actions" values for 'tcsetattr'.
-(define TCSANOW  0)
-(define TCSADRAIN 1)
-(define TCSAFLUSH 2)
+(define-bits tcsetattr-action
+  %unused-tcsetattr-action->symbols
+  (define TCSANOW  0)
+  (define TCSADRAIN 1)
+  (define TCSAFLUSH 2))
 
 (define-record-type <termios>
   (termios input-flags output-flags control-flags local-flags
@@ -1107,8 +1107,8 @@ given an integer, returns the list of names of the 
constants that are or'd."
 (define tcsetattr
   (let ((proc (syscall->procedure int "tcsetattr" (list int int '*))))
     (lambda (fd actions termios)
-      "Use TERMIOS for the tty at FD.  ACTIONS is one of 'TCSANOW',
-'TCSADRAIN', or 'TCSAFLUSH'; see tcsetattr(3) for details."
+      "Use TERMIOS for the tty at FD.  ACTIONS is one of of the values
+produced by 'tcsetattr-action'; see tcsetattr(3) for details."
       (define bv
         (make-bytevector sizeof-termios))
 
diff --git a/tests/syscalls.scm b/tests/syscalls.scm
index ab1e139..0b73fb4 100644
--- a/tests/syscalls.scm
+++ b/tests/syscalls.scm
@@ -281,7 +281,7 @@
 
 (test-assert "tcsetattr"
   (let ((first (tcgetattr 0)))
-    (tcsetattr 0 TCSANOW first)
+    (tcsetattr 0 (tcsetattr-action TCSANOW) first)
     (equal? first (tcgetattr 0))))
 
 (test-assert "terminal-window-size ENOTTY"



reply via email to

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