From cmucl-devel at common-lisp.net Wed Apr 18 23:37:32 2012 From: cmucl-devel at common-lisp.net (cmucl) Date: Wed, 18 Apr 2012 23:37:32 -0000 Subject: [cmucl-ticket] [cmucl] #58: UTF-16 buffering problem Message-ID: <052.d1fd0f1a8b461b820026e7957b99f8e3@common-lisp.net> #58: UTF-16 buffering problem ---------------------+------------------------------------------------------ Reporter: rtoy | Owner: Type: defect | Status: new Priority: major | Milestone: Component: Unicode | Version: 2012-04 Keywords: | ---------------------+------------------------------------------------------ The following code should not cause errors: {{{ (with-open-file (s "test.txt" :direction :output :external-format :utf-16) (dotimes (i 300) (write-char (code-char i) s))) (with-open-file (s "test.txt" :direction :input :external-format :utf-16) (dotimes (i 300) (let ((ch (read-char s nil nil))) (unless (= i (char-code ch)) (format t "Error at ~D: ~S, ~4X~%" i ch (char-code ch)))))) }}} -- Ticket URL: cmucl Cmucl is a high-performance, free Common Lisp implementation. From cmucl-devel at common-lisp.net Wed Apr 18 23:40:07 2012 From: cmucl-devel at common-lisp.net (cmucl) Date: Wed, 18 Apr 2012 23:40:07 -0000 Subject: [cmucl-ticket] [cmucl] #58: UTF-16 buffering problem In-Reply-To: <052.d1fd0f1a8b461b820026e7957b99f8e3@common-lisp.net> References: <052.d1fd0f1a8b461b820026e7957b99f8e3@common-lisp.net> Message-ID: <061.d0bf2b1d52a3ca9f84d8a5b6a7110539@common-lisp.net> #58: UTF-16 buffering problem ---------------------+------------------------------------------------------ Reporter: rtoy | Owner: Type: defect | Status: new Priority: major | Milestone: Component: Unicode | Version: 2012-04 Keywords: | ---------------------+------------------------------------------------------ Comment(by rtoy): The issue is caused by the BOM (byte-order mark) that is inserted in the test file. This is ok, but when reading the file back in, the fast stream buffering code is confused because for all intents and purposes the BOM doesn't exist. But the buffering code needs to know that the BOM was there so that the internal buffers can be updated correctly. The easiest solution is to disable the fast buffering code for utf16 and utf32. The BOM is not used for other encodings. -- Ticket URL: cmucl Cmucl is a high-performance, free Common Lisp implementation. From cmucl-devel at common-lisp.net Thu Apr 19 06:53:34 2012 From: cmucl-devel at common-lisp.net (cmucl) Date: Thu, 19 Apr 2012 06:53:34 -0000 Subject: [cmucl-ticket] [cmucl] #58: UTF-16 buffering problem In-Reply-To: <052.d1fd0f1a8b461b820026e7957b99f8e3@common-lisp.net> References: <052.d1fd0f1a8b461b820026e7957b99f8e3@common-lisp.net> Message-ID: <061.73cdad5aa1502bc404dbc4402a1a79da@common-lisp.net> #58: UTF-16 buffering problem ----------------------+----------------------------------------------------- Reporter: rtoy | Owner: Type: defect | Status: closed Priority: major | Milestone: Component: Unicode | Version: 2012-04 Resolution: fixed | Keywords: ----------------------+----------------------------------------------------- Changes (by toy.raymond@?): * status: new => closed * resolution: => fixed Comment: commit f3db74d49bf24c108053873f06905dbb2ed3cebd Author: Raymond Toy Date: Wed Apr 18 23:53:31 2012 -0700 Fix ticket:58. Handle the BOM character for utf-16 and utf-32. This is a bit of a hack. * src/code/stream.lisp: * Check the state to see if a BOM was read. This critically depends on knowing the format of the state variable for utf16 and utf32 formats, but the stream code shouldn't have to know the state internals. * src/general-info/release-20d.txt * Update. -- Ticket URL: cmucl Cmucl is a high-performance, free Common Lisp implementation. From cmucl-devel at common-lisp.net Sat Apr 21 20:52:45 2012 From: cmucl-devel at common-lisp.net (cmucl) Date: Sat, 21 Apr 2012 20:52:45 -0000 Subject: [cmucl-ticket] [cmucl] #59: pcl failure Message-ID: <052.59d4e9359e98e4bd49211e302d74dec3@common-lisp.net> #59: pcl failure --------------------+------------------------------------------------------- Reporter: rtoy | Owner: rtoy Type: defect | Status: new Priority: major | Milestone: Component: PCL | Version: 20c Keywords: | --------------------+------------------------------------------------------- Mentioned on the asdf-devel page. 1. start cmucl 1. {{{(require :asdf)}}} 1. push my asdf directory onto {{{asdf:*central-registry*}}} 1. {{{(asdf:load-system :asdf)}}} The asdf directory in question is the directory containing the asdf version 2.20.18. The error produced is: {{{ #(11) fell through ETYPECASE expression. Wanted one of (FUNCTION PCL::FAST-INSTANCE-BOUNDP FIXNUM PCL::METHOD-CALL PCL::FAST-METHOD-CALL). [Condition of type CONDITIONS::CASE-FAILURE] Restarts: 0: [TRY-RECOMPILING] Try recompiling asdf 1: [RETRY ] Retry compiling #. 2: [ACCEPT ] Continue, treating compiling # as having been successful. 3: [ABORT ] Return to Top-Level. }}} -- Ticket URL: cmucl Cmucl is a high-performance, free Common Lisp implementation. From cmucl-devel at common-lisp.net Sat Apr 21 20:53:12 2012 From: cmucl-devel at common-lisp.net (cmucl) Date: Sat, 21 Apr 2012 20:53:12 -0000 Subject: [cmucl-ticket] [cmucl] #59: pcl failure In-Reply-To: <052.59d4e9359e98e4bd49211e302d74dec3@common-lisp.net> References: <052.59d4e9359e98e4bd49211e302d74dec3@common-lisp.net> Message-ID: <061.d98f5a8444b8be6663cccc8328e54f8e@common-lisp.net> #59: pcl failure --------------------+------------------------------------------------------- Reporter: rtoy | Owner: rtoy Type: defect | Status: new Priority: major | Milestone: Component: PCL | Version: 20c Keywords: | --------------------+------------------------------------------------------- Description changed by rtoy: Old description: > Mentioned on the asdf-devel page. > > 1. start cmucl > 1. {{{(require :asdf)}}} > 1. push my asdf directory onto {{{asdf:*central-registry*}}} > 1. {{{(asdf:load-system :asdf)}}} > > The asdf directory in question is the directory containing the asdf > version 2.20.18. > > The error produced is: > > {{{ > #(11) fell through ETYPECASE expression. > Wanted one of (FUNCTION PCL::FAST-INSTANCE-BOUNDP FIXNUM PCL::METHOD-CALL > PCL::FAST-METHOD-CALL). > [Condition of type CONDITIONS::CASE-FAILURE] > > Restarts: > 0: [TRY-RECOMPILING] Try recompiling asdf > 1: [RETRY ] Retry compiling #. > 2: [ACCEPT ] Continue, treating > compiling # as > having been > successful. > 3: [ABORT ] Return to Top-Level. > > }}} New description: Mentioned on the asdf-devel list. 1. start cmucl 1. {{{(require :asdf)}}} 1. push my asdf directory onto {{{asdf:*central-registry*}}} 1. {{{(asdf:load-system :asdf)}}} The asdf directory in question is the directory containing the asdf version 2.20.18. The error produced is: {{{ #(11) fell through ETYPECASE expression. Wanted one of (FUNCTION PCL::FAST-INSTANCE-BOUNDP FIXNUM PCL::METHOD-CALL PCL::FAST-METHOD-CALL). [Condition of type CONDITIONS::CASE-FAILURE] Restarts: 0: [TRY-RECOMPILING] Try recompiling asdf 1: [RETRY ] Retry compiling #. 2: [ACCEPT ] Continue, treating compiling # as having been successful. 3: [ABORT ] Return to Top-Level. }}} -- -- Ticket URL: cmucl Cmucl is a high-performance, free Common Lisp implementation.