diff options
Diffstat (limited to 'app-accessibility/speech-tools')
-rw-r--r-- | app-accessibility/speech-tools/ChangeLog | 7 | ||||
-rw-r--r-- | app-accessibility/speech-tools/files/1.2.3-gcc3.4.patch | 1905 | ||||
-rw-r--r-- | app-accessibility/speech-tools/files/speech-tools-gcc3.3.diff | 774 | ||||
-rw-r--r-- | app-accessibility/speech-tools/speech-tools-1.2.3.ebuild | 19 |
4 files changed, 1922 insertions, 783 deletions
diff --git a/app-accessibility/speech-tools/ChangeLog b/app-accessibility/speech-tools/ChangeLog index 28358ee157d9..f4fb798b935d 100644 --- a/app-accessibility/speech-tools/ChangeLog +++ b/app-accessibility/speech-tools/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for app-accessibility/speech-tools # Copyright 2000-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-accessibility/speech-tools/ChangeLog,v 1.8 2004/04/22 06:12:23 eradicator Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-accessibility/speech-tools/ChangeLog,v 1.9 2004/05/18 23:49:37 vapier Exp $ + + 18 May 2004; Mike Frysinger <vapier@gentoo.org> +files/1.2.3-gcc3.4.patch, + -files/speech-tools-gcc3.3.diff, speech-tools-1.2.3.ebuild: + Add gcc-3.4 patch #50331 by Ed Catmur. Also clean up ebuild in general (CFLAGS + and such) and add consolidate the gcc-3.3 patch with the 3.4 one. 21 Apr 2004; Jeremy Huddleston <eradicator@gentoo.org> speech-tools-1.2.3.ebuild: diff --git a/app-accessibility/speech-tools/files/1.2.3-gcc3.4.patch b/app-accessibility/speech-tools/files/1.2.3-gcc3.4.patch new file mode 100644 index 000000000000..da1fdf414ced --- /dev/null +++ b/app-accessibility/speech-tools/files/1.2.3-gcc3.4.patch @@ -0,0 +1,1905 @@ +diff -Naur sp/base_class/vec_mat_aux.cc speech_tools/base_class/vec_mat_aux.cc +--- sp/base_class/vec_mat_aux.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/base_class/vec_mat_aux.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -453,15 +453,15 @@ + return (a.a_no_check(0,0) * a.a_no_check(1,1)) - + (a.a_no_check(0,1) * a.a_no_check(1,0)); + +- float p; ++ double p; + + // create cofactor matrix + j = 1; + for (i = 0; i < n; ++i) + { +- p = (float)(i + j + 2); // because i & j should start at 1 ++ p = (double)(i + j + 2); // because i & j should start at 1 + // cout << "power " <<p << endl; +- A[i] = pow(-1.0, p) * determinant(sub(a, i, j)); ++ A[i] = pow((double)-1.0, p) * determinant(sub(a, i, j)); + } + // cout << "cofactor " << A; + +diff -Naur sp/config/config.in speech_tools/config/config.in +--- sp/config/config.in 2002-07-22 17:58:44.000000000 -0500 ++++ speech_tools/config/config.in 2003-06-22 04:45:11.000000000 -0500 +@@ -61,7 +61,7 @@ + # VERBOSE=1 + # DEBUG=1 + # PROFILE=gprof +-# SHARED=1 ++SHARED=1 + + ## Directory specific selections which override the above + +diff -Naur sp/grammar/ngram/EST_Ngrammar.cc speech_tools/grammar/ngram/EST_Ngrammar.cc +--- sp/grammar/ngram/EST_Ngrammar.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/grammar/ngram/EST_Ngrammar.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -579,7 +579,7 @@ + return false; + } + +- p_num_states = (int)pow(vocab->length(),p_order-1); ++ p_num_states = (int)pow((double)vocab->length(),(double)p_order-1); + p_states = new EST_NgrammarState[p_num_states]; + for (i=0; i < p_num_states; i++) + p_states[i].init(i,pred_vocab); +@@ -597,7 +597,7 @@ + return false; + } + +- p_num_states = (int)pow(vocab->length(),p_order-1); ++ p_num_states = (int)pow((double)vocab->length(),(double)p_order-1); + p_states = new EST_NgrammarState[p_num_states]; + + return (bool)(p_states != NULL); +diff -Naur sp/grammar/ngram/ngrammar_aux.cc speech_tools/grammar/ngram/ngrammar_aux.cc +--- sp/grammar/ngram/ngrammar_aux.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/grammar/ngram/ngrammar_aux.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -110,7 +110,7 @@ + } + + for(int r=first;r<=last;r++) +- N[r] = exp(a)* pow((float)r, b); ++ N[r] = exp(a)* pow((double)r, (double)b); + + return true; + } +@@ -252,7 +252,7 @@ + for (i=1;i<ff.n();i++) + total += ff(i); + +- ff[0] = pow(n.get_vocab_length(),n.order()) - total; ++ ff[0] = pow((double)n.get_vocab_length(),(double)n.order()) - total; + } + } + break; +@@ -285,7 +285,7 @@ + double total=0; + for (i=1;i<ff.n();i++) + total += ff(i); +- ff[0] = pow(n.get_vocab_length(),this_order) - total; ++ ff[0] = pow((double)n.get_vocab_length(),(double)this_order) - total; + + + +diff -Naur sp/grammar/ngram/ngrammar_io.cc speech_tools/grammar/ngram/ngrammar_io.cc +--- sp/grammar/ngram/ngrammar_io.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/grammar/ngram/ngrammar_io.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -756,7 +756,7 @@ + n.print_freqs(*ost,floor); + else if (n.representation() == EST_Ngrammar::backoff) + { +- int total_ngrams = (int)pow(n.get_vocab_length(),n.order()-1); ++ int total_ngrams = (int)pow((double)n.get_vocab_length(),(double)n.order()-1); + + for(i=0;i<total_ngrams;i++) + { +@@ -903,7 +903,7 @@ + // word in the ngram is the least significant 'bit' + + // number of ngrams, excluding last word, is +- int total_ngrams = (int)pow(n.get_vocab_length(),n.order()-1); ++ int total_ngrams = (int)pow((double)n.get_vocab_length(),(double)n.order()-1); + + for(i=0;i<total_ngrams;i++) + { +diff -Naur sp/grammar/wfst/wfst_train.cc speech_tools/grammar/wfst/wfst_train.cc +--- sp/grammar/wfst/wfst_train.cc 2002-12-26 14:29:40.000000000 -0600 ++++ speech_tools/grammar/wfst/wfst_train.cc 2003-06-22 07:34:42.000000000 -0500 +@@ -95,7 +95,7 @@ + LISP s = NIL; + do + { +- t = ts.get(); ++ t = (EST_String)ts.get(); + id = wfst.in_symbol(t); + if (id == -1) + { +diff -Naur sp/include/EST_Chunk.h speech_tools/include/EST_Chunk.h +--- sp/include/EST_Chunk.h 2001-04-04 06:55:32.000000000 -0500 ++++ speech_tools/include/EST_Chunk.h 2003-06-22 04:55:05.000000000 -0500 +@@ -49,7 +49,9 @@ + # define HAVE_WALLOC_H (1) + #endif + +-#include <iostream.h> ++using namespace std; ++ ++#include <iostream> + #include <limits.h> + #include <sys/types.h> + +diff -Naur sp/include/EST_Complex.h speech_tools/include/EST_Complex.h +--- sp/include/EST_Complex.h 2001-04-04 06:55:32.000000000 -0500 ++++ speech_tools/include/EST_Complex.h 2003-06-22 05:28:46.000000000 -0500 +@@ -39,7 +39,7 @@ + + #ifndef __EST_COMPLEX_H__ + #define __EST_COMPLEX_H__ +- ++using namespace std; + #include "EST_iostream.h" + #include <math.h> + +diff -Naur sp/include/EST_dynamic_model.h speech_tools/include/EST_dynamic_model.h +--- sp/include/EST_dynamic_model.h 2001-04-04 06:55:32.000000000 -0500 ++++ speech_tools/include/EST_dynamic_model.h 2003-06-22 04:44:56.000000000 -0500 +@@ -39,7 +39,7 @@ + + #include <stdlib.h> + #include <stdio.h> +-#include <fstream.h> ++#include <fstream> + #include "EST.h" + #include "EST_model_types.h" + +diff -Naur sp/include/EST_iostream.h speech_tools/include/EST_iostream.h +--- sp/include/EST_iostream.h 2001-04-04 06:55:32.000000000 -0500 ++++ speech_tools/include/EST_iostream.h 2003-06-22 04:44:56.000000000 -0500 +@@ -50,8 +50,8 @@ + # include <iostream.h> + # include <strstrea.h> + #elif defined(SYSTEM_IS_UNIX) +-# include <iostream.h> +-# include <strstream.h> ++# include <iostream> ++# include <strstream> + #elif defined(SYSTEM_IS_WIN32) + # include "win32/EST_iostream_win32.h" + # include <strstrea.h> +diff -Naur sp/include/EST_lattice_io.h speech_tools/include/EST_lattice_io.h +--- sp/include/EST_lattice_io.h 2001-04-04 06:55:32.000000000 -0500 ++++ speech_tools/include/EST_lattice_io.h 2003-06-22 04:44:56.000000000 -0500 +@@ -40,8 +40,8 @@ + #ifndef __EST_LATTICE_IO_H__ + #define __EST_LATTICE_IO_H__ + +-#include <String.h> +-#include <ostream.h> ++#include <String> ++#include <ostream> + #include "sp_common_types.h" + #include "wp_grammar.h" + #include "EST_lattice.h" +diff -Naur sp/include/EST_model_types.h speech_tools/include/EST_model_types.h +--- sp/include/EST_model_types.h 2001-04-04 06:55:32.000000000 -0500 ++++ speech_tools/include/EST_model_types.h 2003-06-22 04:44:56.000000000 -0500 +@@ -39,7 +39,7 @@ + + #include <stdlib.h> + #include <stdio.h> +-#include <fstream.h> ++#include <fstream> + #include "EST.h" + #include "EST_Handleable.h" + #include "EST_THandle.h" +diff -Naur sp/include/EST_String.h speech_tools/include/EST_String.h +--- sp/include/EST_String.h 2001-04-04 08:11:27.000000000 -0500 ++++ speech_tools/include/EST_String.h 2003-06-22 05:07:19.000000000 -0500 +@@ -37,15 +37,15 @@ + #ifdef HAVE_CONFIG_H + # include "est_string_config.h" + #endif +- ++using namespace std; + class EST_String; + class EST_Regex; + + #define EST_Regex_max_subexpressions 10 + +-#include <string.h> ++#include <string> + #ifdef NO_EST +-# include <iostream.h> ++# include <iostream> + #else + # include "EST_iostream.h" + #endif +diff -Naur sp/include/EST_THash.h speech_tools/include/EST_THash.h +--- sp/include/EST_THash.h 2002-12-26 09:48:53.000000000 -0600 ++++ speech_tools/include/EST_THash.h 2003-06-22 07:24:49.000000000 -0500 +@@ -35,8 +35,8 @@ + + #ifndef __EST_THASH_H__ + #define __EST_THASH_H__ +- +-#include <iostream.h> ++using namespace std; ++#include <iostream> + #include "EST_String.h" + #include "EST_system.h" + #include "EST_bool.h" +@@ -274,34 +274,76 @@ + * has a different default hash function. + */ + ++template<class V> class EST_TStringHash; ++ + template<class V> +-class EST_TStringHash : public EST_THash<EST_String, V> { ++class EST_StringHash_Pair { + public: ++ EST_String k; ++ V v; ++private: ++ EST_StringHash_Pair<V> *next; ++ friend class EST_TStringHash<V>; ++}; ++ ++template<class V> ++class EST_TStringHash : public EST_THash<EST_String, V> { ++private: ++ static V Dummy_Value; ++ unsigned int p_num_entries; ++ unsigned int p_num_buckets; ++ EST_StringHash_Pair<V> **p_buckets; ++ unsigned int (*p_hash_function)(const EST_String &key, unsigned int size); ++ ++protected: ++ struct IPointer_s { unsigned int b; EST_StringHash_Pair<V> *p; }; ++ typedef struct IPointer_s IPointer; ++ void skip_blank(IPointer &ip) const ++ { ++ while (ip.p==NULL && ip.b<p_num_buckets) ++ {ip.b++; ip.p = ip.b<p_num_buckets?p_buckets[ip.b]:0; } ++ } ++ ++ void point_to_first(IPointer &ip) const ++ { ip.b=0; ip.p = ip.b<p_num_buckets?p_buckets[ip.b]:0; ++ skip_blank(ip);} ++ ++ void move_pointer_forwards(IPointer &ip) const ++ { ++ ip.p = ip.p->next; ++ skip_blank(ip); ++ } ++ ++ bool points_to_something(const IPointer &ip) const { return ip.b<p_num_buckets; } ++ ++ EST_StringHash_Pair<V> &points_at(const IPointer &ip) { return *(ip.p); } + ++ friend class EST_TStructIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> >; ++ friend class EST_TRwStructIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> >; ++ friend class EST_TIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> >; ++ friend class EST_TRwIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> >; ++ ++public: + /// Create a string hash table of <parameter>size</parameter> buckets. +- EST_TStringHash(int size) : EST_THash<EST_String, V>(size, StringHash) {}; ++ EST_TStringHash(int size) : EST_THash<EST_String, V>(size, this->StringHash) {}; + + /// An entry returned by the iterator is a key value pair. +- typedef EST_Hash_Pair<EST_String, V> Entry; +- +-/* struct IPointer_s{ unsigned int b; Entry *p; }; +- typedef struct IPointer_s IPointer; */ +- ++ typedef EST_StringHash_Pair<V> Entry; + + /// Give the iterator a sensible name. +- typedef EST_TStructIterator< EST_THash<EST_String, V>, IPointer, EST_Hash_Pair<EST_String, V> > Entries; +- +- typedef EST_TRwStructIterator< EST_THash<EST_String, V>, IPointer, EST_Hash_Pair<EST_String, V> > RwEntries; +- //@} ++ typedef EST_TStructIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> > Entries; ++ typedef EST_TRwStructIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> > RwEntries; + ++protected: ++ struct IPointer_k_s { unsigned int b; EST_StringHash_Pair<V> *p; }; ++ typedef struct IPointer_k_s IPointer_k; ++ ++public: + typedef EST_String KeyEntry; + +-/* struct IPointer_k_s { unsigned int b; EST_Hash_Pair<EST_String, V> *p; }; +- typedef struct IPointer_k_s IPointer_k; */ +- + /// Give the iterator a sensible name. +- typedef EST_TIterator< EST_THash<EST_String, V>, IPointer_k, EST_String > KeyEntries; +- typedef EST_TRwIterator< EST_THash<EST_String, V>, IPointer_k, EST_String > KeyRwEntries; ++ typedef EST_TIterator< EST_TStringHash<V>, IPointer_k, EST_String > KeyEntries; ++ typedef EST_TRwIterator< EST_TStringHash<V>, IPointer_k, EST_String > KeyRwEntries; + }; + + +diff -Naur sp/include/EST_TList.h speech_tools/include/EST_TList.h +--- sp/include/EST_TList.h 2001-04-04 06:55:32.000000000 -0500 ++++ speech_tools/include/EST_TList.h 2003-06-22 04:44:56.000000000 -0500 +@@ -43,7 +43,7 @@ + #ifndef __Tlist_H__ + #define __Tlist_H__ + +-#include <iostream.h> ++#include <iostream> + #include "EST_common.h" + #include "EST_UList.h" + #include "EST_TSortable.h" +diff -Naur sp/include/EST_TMatrix.h speech_tools/include/EST_TMatrix.h +--- sp/include/EST_TMatrix.h 2001-07-25 06:02:36.000000000 -0500 ++++ speech_tools/include/EST_TMatrix.h 2003-06-22 05:25:18.000000000 -0500 +@@ -41,7 +41,8 @@ + #ifndef __TMatrix_H__ + #define __TMatrix_H__ + +-#include <iostream.h> ++using namespace std; ++#include <iostream> + #include "EST_rw_status.h" + #include "EST_TVector.h" + #include "instantiate/EST_TMatrixI.h" +diff -Naur sp/include/EST_TTimeIndex.h speech_tools/include/EST_TTimeIndex.h +--- sp/include/EST_TTimeIndex.h 2001-04-04 08:11:27.000000000 -0500 ++++ speech_tools/include/EST_TTimeIndex.h 2003-06-22 04:44:56.000000000 -0500 +@@ -35,7 +35,7 @@ + #ifndef __EST_TTIMEINDEX_H__ + #define __EST_TTIMEINDEX_H__ + +-#include <iostream.h> ++#include <iostream> + + /** A time index for a container. The container defines how to get an + * object and so on, this lets you find a point in the container not +diff -Naur sp/include/EST_TVector.h speech_tools/include/EST_TVector.h +--- sp/include/EST_TVector.h 2003-01-12 15:29:02.000000000 -0600 ++++ speech_tools/include/EST_TVector.h 2003-06-22 05:32:34.000000000 -0500 +@@ -40,7 +40,8 @@ + #ifndef __EST_TVector_H__ + #define __EST_TVector_H__ + +-#include <iostream.h> ++using namespace std; ++#include <iostream> + #include "EST_bool.h" + #include "EST_rw_status.h" + +diff -Naur sp/include/EST_UList.h speech_tools/include/EST_UList.h +--- sp/include/EST_UList.h 2001-04-04 06:55:32.000000000 -0500 ++++ speech_tools/include/EST_UList.h 2003-06-22 04:44:56.000000000 -0500 +@@ -41,7 +41,7 @@ + #ifndef __EST_ULIST_H__ + #define __EST_ULIST_H__ + +-#include <iostream.h> ++#include <iostream> + #include "EST_common.h" + #include "EST_String.h" + +diff -Naur sp/intonation/tilt/tilt_utils.cc speech_tools/intonation/tilt/tilt_utils.cc +--- sp/intonation/tilt/tilt_utils.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/intonation/tilt/tilt_utils.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -378,9 +378,9 @@ + + x = (t / (dur)) * 2.0; + if (x < 1.0) +- val = pow(x, 2.0); ++ val = pow((double)x, 2.0); + else +- val = 2 - pow((2 - x), 2.0); ++ val = 2 - pow((double)(2.0 - x), 2.0); + + val = (val / 2.0); + +@@ -398,9 +398,9 @@ + x = (t / length) * 2.0; + + if (x < 1.0) +- val = pow(x, curve); ++ val = pow((double)x, (double)curve); + else +- val = 2 - pow((2 - x), curve); ++ val = 2 - pow((double)(2.0 - x), (double)curve); + + val = val / 2.0; + +diff -Naur sp/ling_class/EST_relation_aux.cc speech_tools/ling_class/EST_relation_aux.cc +--- sp/ling_class/EST_relation_aux.cc 2001-04-04 06:55:32.000000000 -0500 ++++ speech_tools/ling_class/EST_relation_aux.cc 2003-06-22 05:38:20.000000000 -0500 +@@ -416,7 +416,7 @@ + if (k->F("end") > lab.head()->F("end")) + break; + +- filename = k->f("file"); ++ filename = (EST_String)k->f("file"); + a.f.set("name", (filename + ext)); + kstart = 0.0; + +@@ -454,7 +454,7 @@ + k = next(k); + kstart = start(k); + a.clear(); +- filename = k->f("file"); ++ filename = (EST_String)k->f("file"); + a.f.set("name", (filename + ext)); + } + else +diff -Naur sp/main/wfst_run_main.cc speech_tools/main/wfst_run_main.cc +--- sp/main/wfst_run_main.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/main/wfst_run_main.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -213,7 +213,7 @@ + (int)R.samples(),R.mean()*100,(1-R.mean())*100); + if (al.present("-perplexity")) + { +- printf("perplexity is %f\n", pow(2.0,(-1 * (sumlogp/count)))); ++ printf("perplexity is %f\n", pow(2.0,(double)(-1 * (sumlogp/count)))); + } + + if (ofd != stdout) +diff -Naur sp/sigpr/filter.cc speech_tools/sigpr/filter.cc +--- sp/sigpr/filter.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/sigpr/filter.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -419,7 +419,7 @@ + + // check frequency_response has dimension 2^N + int N = fastlog2(frequency_response.n()); +- if(frequency_response.n() != (int)pow(2,(float)N)){ ++ if(frequency_response.n() != (int)pow(2,(double)N)){ + cerr << "Desired frequency response must have dimension 2^N" << endl; + return EST_FVector(0); + } +@@ -470,10 +470,10 @@ + int i; + int N=10; // good minimum size + +- int fft_size = (int)pow(2, N); ++ int fft_size = (int)pow(2.0, (double)N); + while(fft_size < order*4){ // rule of thumb !? + N++; +- fft_size = (int)pow(2, N); ++ fft_size = (int)pow(2.0, (double)N); + } + + // freq response is from 0 to sampling freq and therefore +diff -Naur sp/sigpr/sigpr_frame.cc speech_tools/sigpr/sigpr_frame.cc +--- sp/sigpr/sigpr_frame.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/sigpr/sigpr_frame.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -499,7 +499,7 @@ + { + power = 0.0; + for (int i = 0; i < frame.length(); i++) +- power += pow(frame(i), 2.0); ++ power += pow((double)frame(i), 2.0); + + power /= frame.length(); + } +diff -Naur sp/siod/slib_math.cc speech_tools/siod/slib_math.cc +--- sp/siod/slib_math.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/siod/slib_math.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -14,14 +14,13 @@ + + LISP numberp(LISP x) + {if FLONUMP(x) return(truth); else return(NIL);} +- +-static LISP plus(LISP args) ++static LISP lplus(LISP args) + { + LISP l; + double sum; + for (sum=0.0,l=args; l != NIL; l=cdr(l)) + { +- if (NFLONUMP(car(l))) err("wrong type of argument to plus",car(l)); ++ if (NFLONUMP(car(l))) err("wrong type of argument to lplus",car(l)); + sum += FLONM(car(l)); + } + return flocons(sum); +@@ -138,7 +137,7 @@ + init_subr_1("number?",numberp, + "(number? DATA)\n\ + Returns t if DATA is a number, nil otherwise."); +- init_lsubr("+",plus, ++ init_lsubr("+",lplus, + "(+ NUM1 NUM2 ...)\n\ + Returns the sum of NUM1 and NUM2 ... An error is given is any argument\n\ + is not a number."); +diff -Naur sp/speech_class/EST_track_aux.cc speech_tools/speech_class/EST_track_aux.cc +--- sp/speech_class/EST_track_aux.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/speech_class/EST_track_aux.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -351,7 +351,7 @@ + mean /= n; + + for (i = 0, var = 0.0; i < tr.num_frames(); ++i) +- var += tr.track_break(i) ? 0.0 : pow(tr.a(i, channel) - mean, 2.0); ++ var += tr.track_break(i) ? 0.0 : pow((double)(tr.a(i, channel) - mean), 2.0); + + var /= n; + sd = sqrt(var); +@@ -369,7 +369,7 @@ + + for (i = 0; i < size; ++i) + if (a.val(i) && b.val(i)) +- sum += pow((a.a(i, channel) - b.a(i, channel)), 2.0); ++ sum += pow((double)(a.a(i, channel) - b.a(i, channel)), 2.0); + + sum = sqrt(sum / size); + return sum; +@@ -461,7 +461,7 @@ + for (p = tl.head(); p; p = next(p)) + for (i = 0; i < tl(p).num_frames(); ++i) + if (!tl(p).track_break(i)) +- var += pow(tl(p).a(i, channel) - mean, 2.0); ++ var += pow((double)(tl(p).a(i, channel) - mean), 2.0); + + var /= n; + sd = sqrt(var); +diff -Naur sp/speech_class/EST_TrackFile.cc speech_tools/speech_class/EST_TrackFile.cc +--- sp/speech_class/EST_TrackFile.cc 2002-09-28 09:15:02.000000000 -0500 ++++ speech_tools/speech_class/EST_TrackFile.cc 2003-06-22 07:30:59.000000000 -0500 +@@ -570,15 +570,15 @@ + + while (1) + { +- t = ts.get_upto_eoln(); ++ t = (EST_String)ts.get_upto_eoln(); + // cout << "t=" << t << endl; + if (t.contains("teaching output included")) + teaching = 1; + if (!t.contains(":")) + break; + str.open_string(t); +- k = str.get_upto(":"); +- v = str.get_upto_eoln(); ++ k = (EST_String)str.get_upto(":"); ++ v = (EST_String)str.get_upto_eoln(); + if (k == "No. of output units") + num_channels = v.Int(); + if (k == "No. of patterns") +diff -Naur sp/speech_class/EST_wave_cuts.cc speech_tools/speech_class/EST_wave_cuts.cc +--- sp/speech_class/EST_wave_cuts.cc 2001-04-04 06:55:32.000000000 -0500 ++++ speech_tools/speech_class/EST_wave_cuts.cc 2003-06-22 07:28:07.000000000 -0500 +@@ -67,7 +67,7 @@ + if (end < start) + continue; + wave_subwave(a, sig, start, end-start); +- filename = k->f("file"); ++ filename = (EST_String)k->f("file"); + a.set_name(filename + ext); + wl.append(a); + start = end; +@@ -87,7 +87,7 @@ + for (k = keylab.head(); k; k = next(k)) + { + end = k->F("end",0); +- key_file_name = k->f("file"); ++ key_file_name = (EST_String)k->f("file"); + if (key_file_name == file) + { + wave_subwave(part, sig, start, end-start); +diff -Naur sp/speech_class/EST_wave_temp.cc speech_tools/speech_class/EST_wave_temp.cc +--- sp/speech_class/EST_wave_temp.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/speech_class/EST_wave_temp.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -83,7 +83,7 @@ + mean /= n; + + for (i = 0, mean = 0.0; i < tr.num_samples(); ++i) +- var += pow(tr.a(i, channel) - mean, 2.0); ++ var += pow((double)(tr.a(i, channel) - mean), 2.0); + + var /= n; + sd = sqrt(var); +@@ -96,7 +96,7 @@ + float sum = 0; + + for (i = 0; i < size; ++i) +- sum += pow((a.a(i, channel) - b.a(i, channel)), 2.0); ++ sum += pow((double)(a.a(i, channel) - b.a(i, channel)), 2.0); + + sum = sqrt(sum / size); + return sum; +@@ -110,7 +110,7 @@ + for (i = 0; i < size; ++i) + { + // cout << i << " " << a.a(i, channel) << " " << b.a(i, channel) << endl; +- sum += fabs(a.a(i, channel) - b.a(i, channel)); ++ sum += fabs((double)(a.a(i, channel) - b.a(i, channel))); + } + return sum / size; + } +diff -Naur sp/speech_class/ssff.cc speech_tools/speech_class/ssff.cc +--- sp/speech_class/ssff.cc 2001-04-04 06:55:32.000000000 -0500 ++++ speech_tools/speech_class/ssff.cc 2003-06-22 07:29:24.000000000 -0500 +@@ -99,7 +99,7 @@ + + while (ts.peek() != "-----------------") + { +- c = ts.get(); ++ c = (EST_String)ts.get(); + if (c == "Comment") + ts.get_upto_eoln(); + else if (c == "Start_Time") +@@ -124,9 +124,9 @@ + } + else if (c == "Column") + { +- name = ts.get(); +- type = ts.get(); +- size = ts.get(); ++ name = (EST_String)ts.get(); ++ type = (EST_String)ts.get(); ++ size = (EST_String)ts.get(); + cname = EST_String("Channel_")+itoString(num_channels); + channels.set(cname+".name",name); + channels.set(cname+".type",type); +@@ -141,7 +141,7 @@ + (c == "preemphasis") || + (c == "frame_duration")) + { +- type = ts.get(); ++ type = (EST_String)ts.get(); + if (type == "SHORT") + tr.f_set(c,atoi(ts.get().string())); + else if (type == "DOUBLE") +diff -Naur sp/stats/EST_multistats.cc speech_tools/stats/EST_multistats.cc +--- sp/stats/EST_multistats.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/stats/EST_multistats.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -89,7 +89,7 @@ + { + v[j] = 0.0; + for (i = 0; i < m.num_rows(); ++i) +- v[j] += pow(m(i, j) - u(j), 2.0); ++ v[j] += pow((double)(m(i, j) - u(j)), 2.0); + v[j] /= m.num_rows() - 1; // sample variance + } + +@@ -183,7 +183,7 @@ + { + P(i, j) = 0.0; + for (k = 0; k < p; ++k) +- P(i, j) += pow(gu(i, k) - gu(j, k), 2.0) / gv(k); ++ P(i, j) += pow((double)(gu(i, k) - gu(j, k)), 2.0) / gv(k); + P(i, j) /= p; + } + return P; +@@ -228,7 +228,7 @@ + float P = 0.0; + + for (k = 0; k < n; ++k) +- P += pow(ui(k) - uj(k), 2.0) / v(k); ++ P += pow((double)(ui(k) - uj(k)), 2.0) / v(k); + P /= n; + + return P; +diff -Naur sp/stats/wagon/dlist.cc speech_tools/stats/wagon/dlist.cc +--- sp/stats/wagon/dlist.cc 2001-04-04 08:11:28.000000000 -0500 ++++ speech_tools/stats/wagon/dlist.cc 2003-06-22 07:32:46.000000000 -0500 +@@ -83,7 +83,7 @@ + + for (p=dataset.head(); p != 0; p=next(p)) + { +- predict = dlist->predict(*dataset(p)); ++ predict = (EST_String)dlist->predict(*dataset(p)); + type = dataset.ftype(0); + real = wgn_discretes[type].name(dataset(p)->get_int_val(0)); + pairs.add_item(real,predict,1); +diff -Naur sp/stats/wagon/wagon.cc speech_tools/stats/wagon/wagon.cc +--- sp/stats/wagon/wagon.cc 2001-09-30 14:13:33.000000000 -0500 ++++ speech_tools/stats/wagon/wagon.cc 2003-06-22 07:33:26.000000000 -0500 +@@ -276,7 +276,7 @@ + for (p=dataset.head(); p != 0; p=next(p)) + { + pnode = tree.predict_node((*dataset(p))); +- predict = pnode->get_impurity().value(); ++ predict = (EST_String)pnode->get_impurity().value(); + if (wgn_count_field == -1) + count = 1.0; + else +diff -Naur sp/testsuite/hash_example.cc speech_tools/testsuite/hash_example.cc +--- sp/testsuite/hash_example.cc 2003-06-22 04:36:32.000000000 -0500 ++++ speech_tools/testsuite/hash_example.cc 2003-06-22 04:44:56.000000000 -0500 +@@ -71,8 +71,8 @@ + + EST_THash<int,float> logs(100); + +-logs.add_item(12, log(12)); +-logs.add_item(34, log(34)); ++logs.add_item(12, log(12.0)); ++logs.add_item(34, log(34.0)); + + cout << "length of `fred' = " << lengths.val("fred") << "\n"; + cout << "log of 34' = " << logs.val(34) << "\n"; +diff -Naur sp/testsuite/hash_regression.cc speech_tools/testsuite/hash_regression.cc +--- sp/testsuite/hash_regression.cc 2002-12-27 07:00:24.000000000 -0600 ++++ speech_tools/testsuite/hash_regression.cc 2003-06-22 07:43:57.000000000 -0500 +@@ -71,7 +71,7 @@ + { + EST_String line; + +- line = file.get(); ++ line = (EST_String)file.get(); + + if (file.eof()) + break; +diff -Naur sp/utils/EST_ServiceTable.cc speech_tools/utils/EST_ServiceTable.cc +--- sp/utils/EST_ServiceTable.cc 2002-12-26 09:46:20.000000000 -0600 ++++ speech_tools/utils/EST_ServiceTable.cc 2003-06-22 05:24:16.000000000 -0500 +@@ -42,8 +42,8 @@ + #include "EST_error.h" + #include "EST_Token.h" + #include "EST_ServiceTable.h" +-#include <iomanip.h> +-#include <iostream.h> ++#include <iomanip> ++#include <iostream> + #include <time.h> + + #if defined(SYSTEM_IS_WIN32) +@@ -142,7 +142,7 @@ + + str.must_get("="); + +- EST_Token val = str.get_upto_eoln(); ++ EST_String val = str.get_upto_eoln(); + + if (!entries.t.present(name)) + { +@@ -160,7 +160,7 @@ + else if (type=="type") + entry.type=val; + else if (type=="port") +- entry.port=val; ++ entry.port=strtol(val, NULL, 10); + else if (type=="cookie") + entry.cookie=val; + else + +diff -upr speech_tools/base_class/EST_TMatrix.cc /tmp/speech_tools/base_class/EST_TMatrix.cc +--- speech_tools/base_class/EST_TMatrix.cc 2001-07-25 12:02:35.000000000 +0100 ++++ /tmp/speech_tools/base_class/EST_TMatrix.cc 2004-05-07 04:02:14.324407638 +0100 +@@ -101,7 +101,7 @@ T &EST_TMatrix<T>::a_check(int row, int + { + + if (!EST_matrix_bounds_check(row, col, num_rows(), num_columns(), FALSE)) +- return *error_return; ++ return *this->error_return; + + return a_no_check(row,col); + } +@@ -212,9 +212,9 @@ void EST_TMatrix<T>::just_resize(int new + { + T *new_m; + +- if (num_rows() != new_rows || num_columns() != new_cols || p_memory == NULL ) ++ if (num_rows() != new_rows || num_columns() != new_cols || this->p_memory == NULL ) + { +- if (p_sub_matrix) ++ if (this->p_sub_matrix) + EST_error("Attempt to resize Sub-Matrix"); + + if (new_cols < 0 || new_rows < 0) +@@ -225,22 +225,22 @@ void EST_TMatrix<T>::just_resize(int new + + new_m = new T[new_rows*new_cols]; + +- if (p_memory != NULL) ++ if (this->p_memory != NULL) + if (old_vals != NULL) +- *old_vals = p_memory; +- else if (!p_sub_matrix) +- delete [] (p_memory-p_offset); ++ *old_vals = this->p_memory; ++ else if (!this->p_sub_matrix) ++ delete [] (this->p_memory-this->p_offset); + + p_num_rows = new_rows; +- p_num_columns = new_cols; +- p_offset=0; +- p_row_step=p_num_columns; +- p_column_step=1; ++ this->p_num_columns = new_cols; ++ this->p_offset=0; ++ p_row_step=this->p_num_columns; ++ this->p_column_step=1; + +- p_memory = new_m; ++ this->p_memory = new_m; + } + else +- *old_vals = p_memory; ++ *old_vals = this->p_memory; + + } + +@@ -248,12 +248,12 @@ template<class T> + void EST_TMatrix<T>::resize(int new_rows, int new_cols, int set) + { + int i,j; +- T * old_vals = p_memory; ++ T * old_vals = this->p_memory; + int old_rows = num_rows(); + int old_cols = num_columns(); + int old_row_step = p_row_step; +- int old_offset = p_offset; +- int old_column_step = p_column_step; ++ int old_offset = this->p_offset; ++ int old_column_step = this->p_column_step; + + if (new_rows<0) + new_rows = old_rows; +@@ -285,27 +285,27 @@ void EST_TMatrix<T>::resize(int new_rows + + for(i=0; i<copy_r; i++) + for(j=copy_c; j<new_cols; j++) +- a_no_check(i,j) = *def_val; ++ a_no_check(i,j) = *this->def_val; + + for(i=copy_r; i<new_rows; i++) + for(j=0; j<new_cols; j++) +- a_no_check(i,j) = *def_val; ++ a_no_check(i,j) = *this->def_val; + } + +- if (old_vals && old_vals != p_memory && !p_sub_matrix) ++ if (old_vals && old_vals != this->p_memory && !this->p_sub_matrix) + delete [] (old_vals-old_offset); + } + + template<class T> + bool EST_TMatrix<T>::have_rows_before(int n) const + { +- return p_offset >= n*p_row_step; ++ return this->p_offset >= n*p_row_step; + } + + template<class T> + bool EST_TMatrix<T>::have_columns_before(int n) const + { +- return p_offset >= n*p_column_step; ++ return this->p_offset >= n*this->p_column_step; + } + + template<class T> +@@ -506,12 +506,12 @@ void EST_TMatrix<T>::row(EST_TVector<T> + + rv.p_sub_matrix = TRUE; + rv.p_num_columns = len; +- rv.p_offset = p_offset + start_c*p_column_step + r*p_row_step; +- rv.p_memory = p_memory - p_offset + rv.p_offset; ++ rv.p_offset = this->p_offset + start_c*this->p_column_step + r*p_row_step; ++ rv.p_memory = this->p_memory - this->p_offset + rv.p_offset; + // cout << "mrow: mem: " << rv.p_memory << " (" << (int)rv.p_memory << ")\n"; + // cout << "mrow: ofset: " << rv.p_offset << " (" << (int)rv.p_offset << ")\n"; + +- rv.p_column_step=p_column_step; ++ rv.p_column_step=this->p_column_step; + } + + template<class T> +@@ -528,8 +528,8 @@ void EST_TMatrix<T>::column(EST_TVector< + + cv.p_sub_matrix = TRUE; + cv.p_num_columns = len; +- cv.p_offset = p_offset + c*p_column_step + start_r*p_row_step; +- cv.p_memory = p_memory -p_offset + cv.p_offset; ++ cv.p_offset = this->p_offset + c*this->p_column_step + start_r*p_row_step; ++ cv.p_memory = this->p_memory -this->p_offset + cv.p_offset; + // cout << "mcol: mem: " << cv.p_memory << " (" << (int)cv.p_memory << ")\n"; + // cout << "mcol: offset: " << cv.p_offset << " (" << (int)cv.p_offset << ")\n"; + +@@ -552,10 +552,10 @@ void EST_TMatrix<T>::sub_matrix(EST_TMat + delete [] (sm.p_memory - sm.p_offset); + + sm.p_sub_matrix = TRUE; +- sm.p_offset = p_offset + c*p_column_step + r*p_row_step; +- sm.p_memory = p_memory - p_offset + sm.p_offset; ++ sm.p_offset = this->p_offset + c*this->p_column_step + r*p_row_step; ++ sm.p_memory = this->p_memory - this->p_offset + sm.p_offset; + sm.p_row_step=p_row_step; +- sm.p_column_step=p_column_step; ++ sm.p_column_step=this->p_column_step; + sm.p_num_rows = len_r; + sm.p_num_columns = len_c; + +diff -upr speech_tools/base_class/EST_TNamedEnum.cc /tmp/speech_tools/base_class/EST_TNamedEnum.cc +--- speech_tools/base_class/EST_TNamedEnum.cc 2001-04-04 14:11:27.000000000 +0100 ++++ /tmp/speech_tools/base_class/EST_TNamedEnum.cc 2004-05-07 02:47:03.000000000 +0100 +@@ -186,11 +186,11 @@ EST_read_status EST_TNamedEnum<ENUM>::pr + if ((file=fopen(name, "rb"))==NULL) + return misc_read_error; + +- if (definitions) +- delete[] definitions; ++ if (this->definitions) ++ delete[] this->definitions; + +- ndefinitions= -1; +- definitions=NULL; ++ this->ndefinitions= -1; ++ this->definitions=NULL; + + buffer[LINE_LENGTH-1] = 'x'; + +@@ -202,27 +202,27 @@ EST_read_status EST_TNamedEnum<ENUM>::pr + return wrong_format; + } + +- if (ndefinitions>=0 && quote != '\0' && buffer[0] == '=') ++ if (this->ndefinitions>=0 && quote != '\0' && buffer[0] == '=') + { + // definition by number + +- if ( n>= ndefinitions) ++ if ( n>= this->ndefinitions) + { + cerr << "too many definitions\n"; + return wrong_format; + } + + int ntokens = split(line, tokens, NAMED_ENUM_MAX_SYNONYMS+2, RXwhite, '"'); +- definitions[n].token = (ENUM)atoi(tokens[0].after(0,1)); ++ this->definitions[n].token = (ENUM)atoi(tokens[0].after(0,1)); + + for(int i=1; i<ntokens; i++) +- definitions[n].values[i-1] = wstrdup(tokens[i].unquote_if_needed(quote)); ++ this->definitions[n].values[i-1] = wstrdup(tokens[i].unquote_if_needed(quote)); + for(int j=ntokens-1 ; j< NAMED_ENUM_MAX_SYNONYMS; j++) +- definitions[n].values[j]=NULL; ++ this->definitions[n].values[j]=NULL; + + n++; + } +- else if (have_unknown && ndefinitions>=0 && quote != '\0' && buffer[0] == quote) ++ else if (have_unknown && this->ndefinitions>=0 && quote != '\0' && buffer[0] == quote) + { + // definition by standard name + if (!definitive) +@@ -230,7 +230,7 @@ EST_read_status EST_TNamedEnum<ENUM>::pr + cerr << "can't use names in this definition\n"; + return wrong_format; + } +- if ( n>= ndefinitions) ++ if ( n>= this->ndefinitions) + { + cerr << "too many definitions\n"; + return wrong_format; +@@ -238,12 +238,12 @@ EST_read_status EST_TNamedEnum<ENUM>::pr + + int ntokens = split(line, tokens, NAMED_ENUM_MAX_SYNONYMS+2, RXwhite, quote); + +- definitions[n].token = definitive->token(tokens[0].unquote(quote)); ++ this->definitions[n].token = definitive->token(tokens[0].unquote(quote)); + + for(int i=1; i<ntokens; i++) +- definitions[n].values[i-1] = wstrdup(tokens[i].unquote_if_needed(quote)); ++ this->definitions[n].values[i-1] = wstrdup(tokens[i].unquote_if_needed(quote)); + for(int j=ntokens-1 ; j< NAMED_ENUM_MAX_SYNONYMS; j++) +- definitions[n].values[j]=NULL; ++ this->definitions[n].values[j]=NULL; + + n++; + } +@@ -269,16 +269,16 @@ EST_read_status EST_TNamedEnum<ENUM>::pr + } + else if (key == "number") + { +- ndefinitions=atoi(line.after(eq,1)); ++ this->ndefinitions=atoi(line.after(eq,1)); + // cout << "n = '" << ndefinitions << "'\n"; +- definitions = new Defn[ndefinitions]; +- for(int i=0; i<ndefinitions; i++) +- definitions[i].values[0] =NULL; ++ this->definitions = new Defn[this->ndefinitions]; ++ for(int i=0; i<this->ndefinitions; i++) ++ this->definitions[i].values[0] =NULL; + n=0; + } + else if (key == "unknown") + { +- p_unknown_enum=(ENUM)atoi(line.after(eq,1)); ++ this->p_unknown_enum=(ENUM)atoi(line.after(eq,1)); + // cout << "unknown = '" << p_unknown_enum << "'\n"; + have_unknown=1; + } +@@ -305,20 +305,20 @@ EST_write_status EST_TNamedEnum<ENUM>::p + if ((file=fopen(name, "wb"))==NULL) + return write_fail; + +- fprintf(file, "unknown=%d\n", p_unknown_enum); ++ fprintf(file, "unknown=%d\n", this->p_unknown_enum); + fprintf(file, "quote=%c\n", quote); +- fprintf(file, "number=%d\n", ndefinitions); ++ fprintf(file, "number=%d\n", this->ndefinitions); + +- for(int i=0; i<ndefinitions; i++) +- if (definitions[i].values[0]) ++ for(int i=0; i<this->ndefinitions; i++) ++ if (this->definitions[i].values[0]) + { + if (definitive) +- fprintf(file, "%s ", (const char *)EST_String(definitive->name(definitions[i].token)).quote(quote)); ++ fprintf(file, "%s ", (const char *)EST_String(definitive->name(this->definitions[i].token)).quote(quote)); + else +- fprintf(file, "=%d ", (int)definitions[i].token); ++ fprintf(file, "=%d ", (int)this->definitions[i].token); + +- for(int j=0; j<NAMED_ENUM_MAX_SYNONYMS && definitions[i].values[j] != NULL; j++) +- fprintf(file, "%s ", (const char *) EST_String(definitions[i].values[j]).quote_if_needed(quote)); ++ for(int j=0; j<NAMED_ENUM_MAX_SYNONYMS && this->definitions[i].values[j] != NULL; j++) ++ fprintf(file, "%s ", (const char *) EST_String(this->definitions[i].values[j]).quote_if_needed(quote)); + + fputc('\n', file); + } +diff -upr speech_tools/base_class/EST_TSimpleMatrix.cc /tmp/speech_tools/base_class/EST_TSimpleMatrix.cc +--- speech_tools/base_class/EST_TSimpleMatrix.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/EST_TSimpleMatrix.cc 2004-05-07 04:06:11.621966744 +0100 +@@ -49,23 +49,23 @@ + template<class T> + void EST_TSimpleMatrix<T>::copy_data(const EST_TSimpleMatrix<T> &a) + { +- if (!a.p_sub_matrix && !p_sub_matrix) +- memcpy((void *)&a_no_check(0,0), ++ if (!a.p_sub_matrix && !this->p_sub_matrix) ++ memcpy((void *)&this->a_no_check(0,0), + (const void *)&a.a_no_check(0,0), +- num_rows()*num_columns()*sizeof(T) ++ this->num_rows()*this->num_columns()*sizeof(T) + ); + else + { +- for (int i = 0; i < num_rows(); ++i) +- for (int j = 0; j < num_columns(); ++j) +- a_no_check(i,j) = a.a_no_check(i,j); ++ for (int i = 0; i < this->num_rows(); ++i) ++ for (int j = 0; j < this->num_columns(); ++j) ++ this->a_no_check(i,j) = a.a_no_check(i,j); + } + } + + template<class T> + void EST_TSimpleMatrix<T>::copy(const EST_TSimpleMatrix<T> &a) + { +- if (num_rows() != a.num_rows() || num_columns() != a.num_columns()) ++ if (this->num_rows() != a.num_rows() || this->num_columns() != a.num_columns()) + resize(a.num_rows(), a.num_columns(), 0); + + copy_data(a); +@@ -83,31 +83,31 @@ void EST_TSimpleMatrix<T>::resize(int ne + int set) + { + T* old_vals=NULL; +- int old_offset = p_offset; ++ int old_offset = this->p_offset; + + if (new_rows<0) +- new_rows = num_rows(); ++ new_rows = this->num_rows(); + if (new_cols<0) +- new_cols = num_columns(); ++ new_cols = this->num_columns(); + + if (set) + { +- if (!p_sub_matrix && new_cols == num_columns() && new_rows != num_rows()) ++ if (!this->p_sub_matrix && new_cols == this->num_columns() && new_rows != this->num_rows()) + { +- int copy_r = Lof(num_rows(), new_rows); ++ int copy_r = Lof(this->num_rows(), new_rows); + + just_resize(new_rows, new_cols, &old_vals); + +- memcpy((void *)p_memory, ++ memcpy((void *)this->p_memory, + (const void *)old_vals, + copy_r*new_cols*sizeof(T)); + + int i,j; + + if (new_rows > copy_r) +- if (*def_val == 0) ++ if (*this->def_val == 0) + { +- memset((void *)(p_memory + copy_r*p_row_step), ++ memset((void *)(this->p_memory + copy_r*this->p_row_step), + 0, + (new_rows-copy_r)*new_cols*sizeof(T)); + } +@@ -115,15 +115,15 @@ void EST_TSimpleMatrix<T>::resize(int ne + { + for(j=0; j<new_cols; j++) + for(i=copy_r; i<new_rows; i++) +- a_no_check(i,j) = *def_val; ++ this->a_no_check(i,j) = *this->def_val; + } + } +- else if (!p_sub_matrix) ++ else if (!this->p_sub_matrix) + { +- int old_row_step = p_row_step; +- int old_column_step = p_column_step; +- int copy_r = Lof(num_rows(), new_rows); +- int copy_c = Lof(num_columns(), new_cols); ++ int old_row_step = this->p_row_step; ++ int old_column_step = this->p_column_step; ++ int copy_r = Lof(this->num_rows(), new_rows); ++ int copy_c = Lof(this->num_columns(), new_cols); + + just_resize(new_rows, new_cols, &old_vals); + +@@ -136,12 +136,12 @@ void EST_TSimpleMatrix<T>::resize(int ne + + for(i=0; i<copy_r; i++) + for(j=copy_c; j<new_cols; j++) +- a_no_check(i,j) = *def_val; ++ this->a_no_check(i,j) = *this->def_val; + + if (new_rows > copy_r) +- if (*def_val == 0) ++ if (*this->def_val == 0) + { +- memset((void *)(p_memory + copy_r*p_row_step), ++ memset((void *)(this->p_memory + copy_r*this->p_row_step), + 0, + (new_rows-copy_r)*new_cols*sizeof(T)); + } +@@ -149,7 +149,7 @@ void EST_TSimpleMatrix<T>::resize(int ne + { + for(j=0; j<new_cols; j++) + for(i=copy_r; i<new_rows; i++) +- a_no_check(i,j) = *def_val; ++ this->a_no_check(i,j) = *this->def_val; + } + } + else +@@ -158,7 +158,7 @@ void EST_TSimpleMatrix<T>::resize(int ne + else + EST_TMatrix<T>::resize(new_rows, new_cols, 0); + +- if (old_vals && old_vals != p_memory) ++ if (old_vals && old_vals != this->p_memory) + delete [] (old_vals-old_offset); + } + +diff -upr speech_tools/base_class/EST_TSimpleVector.cc /tmp/speech_tools/base_class/EST_TSimpleVector.cc +--- speech_tools/base_class/EST_TSimpleVector.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/EST_TSimpleVector.cc 2004-05-07 04:17:18.583043092 +0100 +@@ -46,10 +46,10 @@ + + template<class T> void EST_TSimpleVector<T>::copy(const EST_TSimpleVector<T> &a) + { +- if (p_column_step==1 && a.p_column_step==1) ++ if (this->p_column_step==1 && a.p_column_step==1) + { + resize(a.n(), FALSE); +- memcpy((void *)(p_memory), (const void *)(a.p_memory), n() * sizeof(T)); ++ memcpy((void *)(this->p_memory), (const void *)(a.p_memory), this->n() * sizeof(T)); + } + else + ((EST_TVector<T> *)this)->copy(a); +@@ -57,33 +57,33 @@ else + + template<class T> EST_TSimpleVector<T>::EST_TSimpleVector(const EST_TSimpleVector<T> &in) + { +- default_vals(); ++ this->default_vals(); + copy(in); + } + + // should copy from and delete old version first + template<class T> void EST_TSimpleVector<T>::resize(int newn, int set) + { +- int oldn = n(); ++ int oldn = this->n(); + T *old_vals =NULL; +- int old_offset = p_offset; ++ int old_offset = this->p_offset; + + just_resize(newn, &old_vals); + + if (set && old_vals) + { + int copy_c = 0; +- if (p_memory != NULL) ++ if (this->p_memory != NULL) + { +- copy_c = Lof(n(), oldn); +- memcpy((void *)p_memory, (const void *)old_vals, copy_c* sizeof(T)); ++ copy_c = Lof(this->n(), oldn); ++ memcpy((void *)this->p_memory, (const void *)old_vals, copy_c* sizeof(T)); + } + +- for (int i=copy_c; i < n(); ++i) +- p_memory[i] = *def_val; ++ for (int i=copy_c; i < this->n(); ++i) ++ this->p_memory[i] = *this->def_val; + } + +- if (old_vals != NULL && old_vals != p_memory && !p_sub_matrix) ++ if (old_vals != NULL && old_vals != this->p_memory && !this->p_sub_matrix) + delete [] (old_vals - old_offset); + + } +@@ -92,32 +92,32 @@ template<class T> + void EST_TSimpleVector<T>::copy_section(T* dest, int offset, int num) const + { + if (num<0) +- num = num_columns()-offset; ++ num = this->num_columns()-offset; + +- if (!EST_vector_bounds_check(num+offset-1, num_columns(), FALSE)) ++ if (!EST_vector_bounds_check(num+offset-1, this->num_columns(), FALSE)) + return; + +- if (!p_sub_matrix && p_column_step==1) +- memcpy((void *)dest, (const void *)(p_memory+offset), num*sizeof(T)); ++ if (!this->p_sub_matrix && this->p_column_step==1) ++ memcpy((void *)dest, (const void *)(this->p_memory+offset), num*sizeof(T)); + else + for(int i=0; i<num; i++) +- dest[i] = a_no_check(offset+i); ++ dest[i] = this->a_no_check(offset+i); + } + + template<class T> + void EST_TSimpleVector<T>::set_section(const T* src, int offset, int num) + { + if (num<0) +- num = num_columns()-offset; ++ num = this->num_columns()-offset; + +- if (!EST_vector_bounds_check(num+offset-1, num_columns(), FALSE)) ++ if (!EST_vector_bounds_check(num+offset-1, this->num_columns(), FALSE)) + return; + +- if (!p_sub_matrix && p_column_step==1) +- memcpy((void *)(p_memory+offset), (void *)src, num*sizeof(T)); ++ if (!this->p_sub_matrix && this->p_column_step==1) ++ memcpy((void *)(this->p_memory+offset), (void *)src, num*sizeof(T)); + else + for(int i=0; i<num; i++) +- a_no_check(offset+i) = src[i]; ++ this->a_no_check(offset+i) = src[i]; + } + + template<class T> EST_TSimpleVector<T> &EST_TSimpleVector<T>::operator=(const EST_TSimpleVector<T> &in) +@@ -128,9 +128,9 @@ template<class T> EST_TSimpleVector<T> & + + template<class T> void EST_TSimpleVector<T>::zero() + { +- if (p_column_step==1) +- memset((void *)(p_memory), 0, n() * sizeof(T)); ++ if (this->p_column_step==1) ++ memset((void *)(this->p_memory), 0, this->n() * sizeof(T)); + else +- ((EST_TVector<T> *)this)->fill(*def_val); ++ ((EST_TVector<T> *)this)->fill(*this->def_val); + } + +diff -upr speech_tools/base_class/EST_Tvectlist.cc /tmp/speech_tools/base_class/EST_Tvectlist.cc +--- speech_tools/base_class/EST_Tvectlist.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/EST_Tvectlist.cc 2004-05-07 04:09:57.405474037 +0100 +@@ -39,6 +39,7 @@ + /*=======================================================================*/ + #include <fstream.h> + #include "EST_TVector.h" ++#include "EST_TList.h" + #include "EST_cutils.h" + + template<class T> +@@ -57,6 +58,7 @@ template<class T> EST_TVector<T> ©(E + { + a.resize(in.length(), FALSE); + EST_Litem *p; ++ int i; + for (i = 0, p = in.head(); p!= 0; p = next(p), ++i) + a[i] = in.item(p); + +diff -upr speech_tools/base_class/inst_tmpl/hash_fi_t.cc /tmp/speech_tools/base_class/inst_tmpl/hash_fi_t.cc +--- speech_tools/base_class/inst_tmpl/hash_fi_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/hash_fi_t.cc 2004-05-07 08:46:03.658610923 +0100 +@@ -38,7 +38,7 @@ + #include "EST_String.h" + #include "EST_THash.h" + +-Declare_THash(float, int) ++Declare_THash_Base(float, int, 0.0, 0, NULL) + + #if defined(INSTANTIATE_TEMPLATES) + +diff -upr speech_tools/base_class/inst_tmpl/hash_ii_t.cc /tmp/speech_tools/base_class/inst_tmpl/hash_ii_t.cc +--- speech_tools/base_class/inst_tmpl/hash_ii_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/hash_ii_t.cc 2004-05-07 08:44:57.647279973 +0100 +@@ -38,7 +38,7 @@ + #include "EST_String.h" + #include "EST_THash.h" + +-Declare_THash(int,int) ++Declare_THash_Base(int,int,0,0,NULL) + + #if defined(INSTANTIATE_TEMPLATES) + +diff -upr speech_tools/base_class/inst_tmpl/hash_iv_t.cc /tmp/speech_tools/base_class/inst_tmpl/hash_iv_t.cc +--- speech_tools/base_class/inst_tmpl/hash_iv_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/hash_iv_t.cc 2004-05-07 08:45:15.019314215 +0100 +@@ -42,7 +42,7 @@ + #include "EST_THash.h" + #include "EST_Val.h" + +-Declare_THash(int,EST_Val) ++Declare_THash_Base(int,EST_Val,0,EST_Val(),NULL) + + #if defined(INSTANTIATE_TEMPLATES) + +diff -upr speech_tools/base_class/inst_tmpl/hash_sd_t.cc /tmp/speech_tools/base_class/inst_tmpl/hash_sd_t.cc +--- speech_tools/base_class/inst_tmpl/hash_sd_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/hash_sd_t.cc 2004-05-07 08:41:00.844600895 +0100 +@@ -39,7 +39,7 @@ + #include "EST_String.h" + #include "EST_THash.h" + +-Declare_TStringHash(double) ++Declare_TStringHash_Base(double, 0.0, NULL) + + #if defined(INSTANTIATE_TEMPLATES) + +diff -upr speech_tools/base_class/inst_tmpl/hash_sfmp_t.cc /tmp/speech_tools/base_class/inst_tmpl/hash_sfmp_t.cc +--- speech_tools/base_class/inst_tmpl/hash_sfmp_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/hash_sfmp_t.cc 2004-05-07 08:41:43.081096350 +0100 +@@ -40,7 +40,7 @@ + #include "EST_FMatrix.h" + #include "EST_THash.h" + +-Declare_TStringHash_T(EST_FMatrix*,EST_StringFMatrixP) ++Declare_TStringHash_Base_T(EST_FMatrix*,NULL,NULL,EST_StringFMatrixP) + + #if defined(INSTANTIATE_TEMPLATES) + +diff -upr speech_tools/base_class/inst_tmpl/hash_sf_t.cc /tmp/speech_tools/base_class/inst_tmpl/hash_sf_t.cc +--- speech_tools/base_class/inst_tmpl/hash_sf_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/hash_sf_t.cc 2004-05-07 08:41:11.281016897 +0100 +@@ -38,7 +38,7 @@ + #include "EST_String.h" + #include "EST_THash.h" + +-Declare_TStringHash(float) ++Declare_TStringHash_Base(float, 0.0, NULL) + + #if defined(INSTANTIATE_TEMPLATES) + +diff -upr speech_tools/base_class/inst_tmpl/hash_si_t.cc /tmp/speech_tools/base_class/inst_tmpl/hash_si_t.cc +--- speech_tools/base_class/inst_tmpl/hash_si_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/hash_si_t.cc 2004-05-07 08:41:17.868754585 +0100 +@@ -38,7 +38,7 @@ + #include "EST_String.h" + #include "EST_THash.h" + +-Declare_TStringHash(int) ++Declare_TStringHash_Base(int, 0, NULL) + + #if defined(INSTANTIATE_TEMPLATES) + +diff -upr speech_tools/base_class/inst_tmpl/hash_srp.cc /tmp/speech_tools/base_class/inst_tmpl/hash_srp.cc +--- speech_tools/base_class/inst_tmpl/hash_srp.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/hash_srp.cc 2004-05-07 08:42:04.399775250 +0100 +@@ -40,7 +40,7 @@ + #include "ling_class/EST_Relation.h" + #include "EST_THash.h" + +-Declare_TStringHash_T(EST_Relation*,EST_StringRelationP) ++Declare_TStringHash_Base_T(EST_Relation*,NULL,NULL,EST_StringRelationP) + + #if defined(INSTANTIATE_TEMPLATES) + +diff -upr speech_tools/base_class/inst_tmpl/hash_ss_t.cc /tmp/speech_tools/base_class/inst_tmpl/hash_ss_t.cc +--- speech_tools/base_class/inst_tmpl/hash_ss_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/hash_ss_t.cc 2004-05-07 08:41:49.145013925 +0100 +@@ -41,7 +41,7 @@ + #include "EST_String.h" + #include "EST_THash.h" + +-Declare_TStringHash(EST_String) ++Declare_TStringHash_Base(EST_String, "", NULL) + + #if defined(INSTANTIATE_TEMPLATES) + +diff -upr speech_tools/base_class/inst_tmpl/hash_sv_t.cc /tmp/speech_tools/base_class/inst_tmpl/hash_sv_t.cc +--- speech_tools/base_class/inst_tmpl/hash_sv_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/hash_sv_t.cc 2004-05-07 08:41:55.909690850 +0100 +@@ -42,7 +42,7 @@ + #include "EST_String.h" + #include "EST_Val.h" + +-Declare_TStringHash(EST_Val) ++Declare_TStringHash_Base(EST_Val, EST_Val(), NULL) + + #if defined(INSTANTIATE_TEMPLATES) + +diff -upr speech_tools/base_class/inst_tmpl/vector_dmatrix_t.cc /tmp/speech_tools/base_class/inst_tmpl/vector_dmatrix_t.cc +--- speech_tools/base_class/inst_tmpl/vector_dmatrix_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/vector_dmatrix_t.cc 2004-05-07 04:25:47.812305417 +0100 +@@ -52,8 +52,8 @@ template ostream& operator << (ostream & + #endif + static const EST_DMatrix def_val_DMatrix; + static EST_DMatrix error_return_DMatrix; +-const EST_DMatrix *EST_TVector<EST_DMatrix>::def_val = &def_val_DMatrix; +-EST_DMatrix *EST_TVector<EST_DMatrix>::error_return = &error_return_DMatrix; ++template <> const EST_DMatrix *EST_TVector<EST_DMatrix>::def_val = &def_val_DMatrix; ++template <> EST_DMatrix *EST_TVector<EST_DMatrix>::error_return = &error_return_DMatrix; + + int operator !=(const EST_DMatrix &fm1, + const EST_DMatrix &fm2) +diff -upr speech_tools/base_class/inst_tmpl/vector_dvector_t.cc /tmp/speech_tools/base_class/inst_tmpl/vector_dvector_t.cc +--- speech_tools/base_class/inst_tmpl/vector_dvector_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/vector_dvector_t.cc 2004-05-07 04:24:39.031901237 +0100 +@@ -52,8 +52,8 @@ template ostream& operator << (ostream & + #endif + static const EST_DVector def_val_DVector; + static EST_DVector error_return_DVector; +-const EST_DVector *EST_TVector<EST_DVector>::def_val = &def_val_DVector; +-EST_DVector *EST_TVector<EST_DVector>::error_return = &error_return_DVector; ++template <> const EST_DVector *EST_TVector<EST_DVector>::def_val = &def_val_DVector; ++template <> EST_DVector *EST_TVector<EST_DVector>::error_return = &error_return_DVector; + + int operator !=(const EST_DVector &fv1, + const EST_DVector &fv2) +diff -upr speech_tools/base_class/inst_tmpl/vector_fmatrix_t.cc /tmp/speech_tools/base_class/inst_tmpl/vector_fmatrix_t.cc +--- speech_tools/base_class/inst_tmpl/vector_fmatrix_t.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/base_class/inst_tmpl/vector_fmatrix_t.cc 2004-05-07 04:23:50.761461063 +0100 +@@ -52,8 +52,8 @@ template ostream& operator << (ostream & + #endif + static const EST_FMatrix def_val_FMatrix; + static EST_FMatrix error_return_FMatrix; +-const EST_FMatrix *EST_TVector<EST_FMatrix>::def_val = &def_val_FMatrix; +-EST_FMatrix *EST_TVector<EST_FMatrix>::error_return = &error_return_FMatrix; ++template <> const EST_FMatrix *EST_TVector<EST_FMatrix>::def_val = &def_val_FMatrix; ++template <> EST_FMatrix *EST_TVector<EST_FMatrix>::error_return = &error_return_FMatrix; + + int operator !=(const EST_FMatrix &fm1, + const EST_FMatrix &fm2) +diff -upr speech_tools/grammar/scfg/EST_SCFG_inout.cc /tmp/speech_tools/grammar/scfg/EST_SCFG_inout.cc +--- speech_tools/grammar/scfg/EST_SCFG_inout.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/grammar/scfg/EST_SCFG_inout.cc 2004-05-07 04:37:19.286102544 +0100 +@@ -54,8 +54,8 @@ + + static const EST_bracketed_string def_val_s; + static EST_bracketed_string error_return_s; +-const EST_bracketed_string *EST_TVector<EST_bracketed_string>::def_val=&def_val_s; +-EST_bracketed_string *EST_TVector<EST_bracketed_string>::error_return=&error_return_s; ++template <> const EST_bracketed_string *EST_TVector<EST_bracketed_string>::def_val=&def_val_s; ++template <> EST_bracketed_string *EST_TVector<EST_bracketed_string>::error_return=&error_return_s; + + + #if defined(INSTANTIATE_TEMPLATES) +diff -upr speech_tools/grammar/wfst/wfst_ops.cc /tmp/speech_tools/grammar/wfst/wfst_ops.cc +--- speech_tools/grammar/wfst/wfst_ops.cc 2001-09-25 18:02:06.000000000 +0100 ++++ /tmp/speech_tools/grammar/wfst/wfst_ops.cc 2004-05-07 04:38:54.305509023 +0100 +@@ -57,8 +57,8 @@ Declare_TList_T(EST_WFST_MultiState *,ES + static EST_IList int_EST_IList_kv_def_EST_IList_s; + static int int_EST_IList_kv_def_int_s; + +- EST_IList *EST_TKVL< int, EST_IList >::default_val=&int_EST_IList_kv_def_EST_IList_s; +- int *EST_TKVL< int, EST_IList >::default_key=&int_EST_IList_kv_def_int_s; ++ template <> EST_IList *EST_TKVL< int, EST_IList >::default_val=&int_EST_IList_kv_def_EST_IList_s; ++ template <> int *EST_TKVL< int, EST_IList >::default_key=&int_EST_IList_kv_def_int_s; + + Declare_TList_N(KVI_int_EST_IList_t, 0) + +diff -upr speech_tools/include/EST_TIterator.h /tmp/speech_tools/include/EST_TIterator.h +--- speech_tools/include/EST_TIterator.h 2002-12-26 15:48:54.000000000 +0000 ++++ /tmp/speech_tools/include/EST_TIterator.h 2004-05-07 02:14:24.000000000 +0100 +@@ -201,18 +201,18 @@ public: + typedef EST_TIterator<Container, IPointer, Entry> Iter; + + /// Create an iterator not associated with any specific container. +- EST_TStructIterator() {cont=NULL;} ++ EST_TStructIterator() {this->cont=NULL;} + + /// Copy an iterator by assignment + Iter &operator = (const Iter &orig) +- { cont=orig.cont; pos=orig.pos; pointer=orig.pointer; return *this;} ++ { this->cont=orig.cont; this->pos=orig.pos; this->pointer=orig.pointer; return *this;} + + /// Create an iterator ready to run over the given container. + EST_TStructIterator(const Container &over) + { begin(over); } + + const Entry *operator ->() const +- {return ¤t();} ++ {return &this->current();} + }; + + template <class Container, class IPointer, class Entry> +@@ -231,11 +231,11 @@ public: + typedef EST_TIterator<Container, IPointer, Entry> Iter; + + /// Create an iterator not associated with any specific container. +- EST_TRwIterator() {cont=NULL;} ++ EST_TRwIterator() {this->cont=NULL;} + + /// Copy an iterator by assignment + Iter &operator = (const Iter &orig) +- { cont=orig.cont; pos=orig.pos; pointer=orig.pointer; return *this;} ++ { this->cont=orig.cont; this->pos=orig.pos; this->pointer=orig.pointer; return *this;} + + /// Create an iterator ready to run over the given container. + EST_TRwIterator(Container &over) +@@ -243,18 +243,18 @@ public: + + /// Set the iterator ready to run over this container. + void begin(Container &over) +- {cont=&over; beginning();} ++ {this->cont=&over; this->beginning();} + + /**@name Access + */ + //@{ + /// Return the element currentl pointed to. + Entry& current() const +- {return cont->points_at(pointer);} ++ {return this->cont->points_at(this->pointer);} + + /// The * operator returns the current element. + Entry &operator *() const +- {return current();} ++ {return this->current();} + + #if 0 + Entry *operator ->() const +@@ -264,8 +264,8 @@ public: + /// Return the current element and move the pointer forwards. + Entry& next_element() + { +- Entry &it = cont->points_at(pointer); +- cont->move_pointer_forwards(pointer); ++ Entry &it = this->cont->points_at(this->pointer); ++ this->cont->move_pointer_forwards(this->pointer); + return it; + } + +@@ -281,18 +281,18 @@ public: + typedef EST_TIterator<Container, IPointer, Entry> Iter; + + /// Create an iterator not associated with any specific container. +- EST_TRwStructIterator() {cont=NULL;} ++ EST_TRwStructIterator() {this->cont=NULL;} + + /// Copy an iterator by assignment + Iter &operator = (const Iter &orig) +- { cont=orig.cont; pos=orig.pos; pointer=orig.pointer; return *this;} ++ { this->cont=orig.cont; this->pos=orig.pos; this->pointer=orig.pointer; return *this;} + + /// Create an iterator ready to run over the given container. + EST_TRwStructIterator(Container &over) + { begin(over); } + + Entry *operator ->() const +- {return ¤t();} ++ {return &this->current();} + }; + + #endif +diff -upr speech_tools/include/EST_TMatrix.h /tmp/speech_tools/include/EST_TMatrix.h +--- speech_tools/include/EST_TMatrix.h 2004-05-07 08:54:04.197591707 +0100 ++++ /tmp/speech_tools/include/EST_TMatrix.h 2004-05-07 02:15:29.000000000 +0100 +@@ -105,7 +105,7 @@ protected: + { + + return mcell_pos(r, c, +- p_row_step, p_column_step); ++ p_row_step, this->p_column_step); + } + + INLINE unsigned int mcell_pos_1(int r, int c) const +@@ -117,14 +117,14 @@ protected: + + /// quick method for returning {\tt x[m][n]} + INLINE const T &fast_a_m(int r, int c) const +- { return p_memory[mcell_pos(r,c)]; } ++ { return this->p_memory[mcell_pos(r,c)]; } + INLINE T &fast_a_m(int r, int c) +- { return p_memory[mcell_pos(r,c)]; } ++ { return this->p_memory[mcell_pos(r,c)]; } + + INLINE const T &fast_a_1(int r, int c) const +- { return p_memory[mcell_pos_1(r,c)]; } ++ { return this->p_memory[mcell_pos_1(r,c)]; } + INLINE T &fast_a_1(int r, int c) +- { return p_memory[mcell_pos_1(r,c)]; } ++ { return this->p_memory[mcell_pos_1(r,c)]; } + + + /// Get and set values from array +@@ -176,7 +176,7 @@ public: + /// return number of rows + int num_rows() const {return p_num_rows;} + /// return number of columns +- int num_columns() const {return p_num_columns;} ++ int num_columns() const {return this->p_num_columns;} + + /// const access with no bounds check, care recommend + INLINE const T &a_no_check(int row, int col) const +@@ -215,7 +215,7 @@ public: + + /// fill matrix with value v + void fill(const T &v); +- void fill() { fill(*def_val); } ++ void fill() { fill(*this->def_val); } + + /// assignment operator + EST_TMatrix &operator=(const EST_TMatrix &s); +diff -upr speech_tools/include/EST_TNamedEnum.h /tmp/speech_tools/include/EST_TNamedEnum.h +--- speech_tools/include/EST_TNamedEnum.h 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/include/EST_TNamedEnum.h 2004-05-07 02:41:52.000000000 +0100 +@@ -124,9 +124,9 @@ protected: + public: + + EST_TNamedEnumI(EST_TValuedEnumDefinition<ENUM,const char *,INFO> defs[]) +- {initialise((const void *)defs); }; ++ {this->initialise((const void *)defs); }; + EST_TNamedEnumI(EST_TValuedEnumDefinition<const char *,const char *,INFO> defs[], ENUM (*conv)(const char *)) +- {initialise((const void *)defs, conv); }; ++ {this->initialise((const void *)defs, conv); }; + const char *name(ENUM tok, int n=0) const {return value(tok,n); }; + + }; +@@ -136,9 +136,9 @@ public: + template<class ENUM, class VAL> class EST_TValuedEnum : public EST_TValuedEnumI<ENUM,VAL,NO_INFO> { + public: + EST_TValuedEnum(EST_TValuedEnumDefinition<ENUM,VAL,NO_INFO> defs[]) +- {initialise((const void *)defs);}; ++ {this->initialise((const void *)defs);}; + EST_TValuedEnum(EST_TValuedEnumDefinition<const char *,VAL,NO_INFO> defs[], ENUM (*conv)(const char *)) +- {initialise((const void *)defs, conv);}; ++ {this->initialise((const void *)defs, conv);}; + }; + + +@@ -148,11 +148,11 @@ private: + EST_write_status priv_save(EST_String name, EST_TNamedEnum *definitive, char quote) const; + public: + EST_TNamedEnum(ENUM undef_e, const char *undef_n = NULL) +- {initialise(undef_e, undef_n);}; ++ {this->initialise(undef_e, undef_n);}; + EST_TNamedEnum(EST_TValuedEnumDefinition<ENUM,const char *,NO_INFO> defs[]) +- {initialise((const void *)defs);}; ++ {this->initialise((const void *)defs);}; + EST_TNamedEnum(EST_TValuedEnumDefinition<const char *,const char *,NO_INFO> defs[], ENUM (*conv)(const char *)) +- {initialise((const void *)defs, conv);}; ++ {this->initialise((const void *)defs, conv);}; + + EST_read_status load(EST_String name) { return priv_load(name, NULL); }; + EST_read_status load(EST_String name, EST_TNamedEnum &definitive) { return priv_load(name, &definitive); }; +diff -upr speech_tools/include/EST_TSimpleVector.h /tmp/speech_tools/include/EST_TSimpleVector.h +--- speech_tools/include/EST_TSimpleVector.h 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/include/EST_TSimpleVector.h 2004-05-07 02:15:08.000000000 +0100 +@@ -74,7 +74,7 @@ public: + void zero(void); + + /// Fill vector with default value +- void empty(void) { if (*def_val == 0) zero(); else fill(*def_val); } ++ void empty(void) { if (*this->def_val == 0) zero(); else this->fill(*this->def_val); } + }; + + #endif +diff -upr speech_tools/include/instantiate/EST_TDequeI.h /tmp/speech_tools/include/instantiate/EST_TDequeI.h +--- speech_tools/include/instantiate/EST_TDequeI.h 2001-04-04 14:11:27.000000000 +0100 ++++ /tmp/speech_tools/include/instantiate/EST_TDequeI.h 2004-05-07 04:28:35.271857830 +0100 +@@ -54,16 +54,16 @@ + #define Instantiate_TDEQ(T) Instantiate_TDEQ_T(T, T) + + #define Declare_TDEQ_T(T, TAG) \ +- const T *EST_TDeque< T >::Filler=NULL; ++ template <> const T *EST_TDeque< T >::Filler=NULL; + + #define Declare_TDEQ_Base_T(T, FILLER ,TAG) \ + const T TAG ## _deq_filler=FILLER; \ +- const T *EST_TDeque< T >::Filler=& TAG ## _deq_filler; ++ template <> const T *EST_TDeque< T >::Filler=& TAG ## _deq_filler; + + + #define Declare_TDEQ_Class_T(T, FILLER,TAG) \ + const T TAG ## _deq_filler(FILLER); \ +- const T *EST_TDeque< T >::Filler=& TAG ## _deq_filler; ++ template <> const T *EST_TDeque< T >::Filler=& TAG ## _deq_filler; + + #define Declare_TDEQ(T) Declare_TDEQ_T(T, T) + +diff -upr speech_tools/include/instantiate/EST_THashI.h /tmp/speech_tools/include/instantiate/EST_THashI.h +--- speech_tools/include/instantiate/EST_THashI.h 2001-04-04 14:11:27.000000000 +0100 ++++ /tmp/speech_tools/include/instantiate/EST_THashI.h 2004-05-07 08:07:46.302692176 +0100 +@@ -77,17 +77,17 @@ + + + #define Declare_THash_T(KEY, VAL, TAG) \ +- VAL EST_THash< KEY, VAL >::Dummy_Value; \ +- KEY EST_THash< KEY, VAL >::Dummy_Key; \ ++ template <> VAL EST_THash< KEY, VAL >::Dummy_Value; \ ++ template <> KEY EST_THash< KEY, VAL >::Dummy_Key; \ + EST_THash< KEY, VAL > TAG ## _hash_dummy(0); + + #define Declare_THash_Base_T(KEY, VAL, DEFAULTK, DEFAULT, ERROR,TAG) \ +- KEY EST_THash< KEY, VAL >::Dummy_Key=DEFAULTK; \ +- VAL EST_THash<KEY, VAL>::Dummy_Value=DEFAULT; ++ template <> KEY EST_THash< KEY, VAL >::Dummy_Key=DEFAULTK; \ ++ template <> VAL EST_THash<KEY, VAL>::Dummy_Value=DEFAULT; + + #define Declare_THash_Class_T(KEY, VAL, DEFAULTK, DEFAULT, ERROR,TAG) \ +- KEY EST_THash< KEY, VAL >::Dummy_Key(DEFAULTK); \ +- VAL EST_THash<KEY, VAL>::Dummy_Value(DEFAULT); ++ template <> KEY EST_THash< KEY, VAL >::Dummy_Key(DEFAULTK); \ ++ template <> VAL EST_THash<KEY, VAL>::Dummy_Value(DEFAULT); + + #define Declare_THash(KEY, VAL) Declare_THash_T(KEY, VAL, KEY ## VAL) + +@@ -98,3 +98,4 @@ + + #endif + ++ +diff -upr speech_tools/include/instantiate/EST_TKVLI.h /tmp/speech_tools/include/instantiate/EST_TKVLI.h +--- speech_tools/include/instantiate/EST_TKVLI.h 2001-04-04 14:11:27.000000000 +0100 ++++ /tmp/speech_tools/include/instantiate/EST_TKVLI.h 2004-05-07 03:39:25.860020756 +0100 +@@ -71,8 +71,8 @@ + static VAL TAG##_kv_def_val_s; \ + static KEY TAG##_kv_def_key_s; \ + \ +- VAL *EST_TKVL< KEY, VAL >::default_val=&TAG##_kv_def_val_s; \ +- KEY *EST_TKVL< KEY, VAL >::default_key=&TAG##_kv_def_key_s; \ ++ template <> VAL *EST_TKVL< KEY, VAL >::default_val=&TAG##_kv_def_val_s; \ ++ template <> KEY *EST_TKVL< KEY, VAL >::default_key=&TAG##_kv_def_key_s; \ + \ + Declare_TList_N(KVI_ ## TAG ## _t, MaxFree) + #define Declare_KVL_T(KEY, VAL, TAG) \ +@@ -85,8 +85,8 @@ + static VAL TAG##_kv_def_val_s=DEFV; \ + static KEY TAG##_kv_def_key_s=DEFK; \ + \ +- VAL *EST_TKVL< KEY, VAL >::default_val=&TAG##_kv_def_val_s; \ +- KEY *EST_TKVL< KEY, VAL >::default_key=&TAG##_kv_def_key_s; \ ++ template <> VAL *EST_TKVL< KEY, VAL >::default_val=&TAG##_kv_def_val_s; \ ++ template <> KEY *EST_TKVL< KEY, VAL >::default_key=&TAG##_kv_def_key_s; \ + \ + Declare_TList_N(KVI_ ## TAG ## _t, MaxFree) + #define Declare_KVL_Base_T(KEY, VAL, DEFV, DEFK, TAG) \ +@@ -99,8 +99,8 @@ + static VAL TAG##_kv_def_val_s(DEFV); \ + static KEY TAG##_kv_def_key_s(DEFK); \ + \ +- VAL *EST_TKVL< KEY, VAL >::default_val=&TAG##_kv_def_val_s; \ +- KEY *EST_TKVL< KEY, VAL >::default_key=&TAG##_kv_def_key_s; \ ++ template <> VAL *EST_TKVL< KEY, VAL >::default_val=&TAG##_kv_def_val_s; \ ++ template <> KEY *EST_TKVL< KEY, VAL >::default_key=&TAG##_kv_def_key_s; \ + \ + Declare_TList_N(KVI_ ## TAG ## _t, MaxFree) + #define Declare_KVL_Class_T(KEY, VAL, DEFV, DEFK,TAG) \ +diff -upr speech_tools/include/instantiate/EST_TListI.h /tmp/speech_tools/include/instantiate/EST_TListI.h +--- speech_tools/include/instantiate/EST_TListI.h 2001-04-04 14:11:27.000000000 +0100 ++++ /tmp/speech_tools/include/instantiate/EST_TListI.h 2004-05-07 03:52:57.507516308 +0100 +@@ -64,9 +64,9 @@ + + #define Declare_TList_TN(TYPE,MaxFree,TAG) \ + typedef TYPE TLIST_ ## TAG ## _VAL; \ +- EST_TItem< TYPE > * EST_TItem< TYPE >::s_free=NULL; \ +- unsigned int EST_TItem< TYPE >::s_maxFree=MaxFree; \ +- unsigned int EST_TItem< TYPE >::s_nfree=0; ++ template <> EST_TItem< TYPE > * EST_TItem< TYPE >::s_free=NULL; \ ++ template <> unsigned int EST_TItem< TYPE >::s_maxFree=MaxFree; \ ++ template <> unsigned int EST_TItem< TYPE >::s_nfree=0; + #define Declare_TList_T(TYPE,TAG) \ + Declare_TList_TN(TYPE,0,TAG) + +diff -upr speech_tools/include/instantiate/EST_TVectorI.h /tmp/speech_tools/include/instantiate/EST_TVectorI.h +--- speech_tools/include/instantiate/EST_TVectorI.h 2001-04-04 14:11:27.000000000 +0100 ++++ /tmp/speech_tools/include/instantiate/EST_TVectorI.h 2004-05-07 04:19:44.345012309 +0100 +@@ -62,22 +62,22 @@ + static TYPE const TAG##_vec_def_val_s; \ + static TYPE TAG##_vec_error_return_s; \ + \ +- TYPE const *EST_TVector< TYPE >::def_val=&TAG##_vec_def_val_s; \ +- TYPE *EST_TVector< TYPE >::error_return=&TAG##_vec_error_return_s; ++ template <> TYPE const *EST_TVector< TYPE >::def_val=&TAG##_vec_def_val_s; \ ++ template <> TYPE *EST_TVector< TYPE >::error_return=&TAG##_vec_error_return_s; + + #define Declare_TVector_Base_T(TYPE,DEFAULT,ERROR,TAG) \ + static TYPE const TAG##_vec_def_val_s=DEFAULT; \ + static TYPE TAG##_vec_error_return_s=ERROR; \ + \ +- TYPE const *EST_TVector<TYPE>::def_val=&TAG##_vec_def_val_s; \ +- TYPE *EST_TVector<TYPE>::error_return=&TAG##_vec_error_return_s; ++ template <> TYPE const *EST_TVector<TYPE>::def_val=&TAG##_vec_def_val_s; \ ++ template <> TYPE *EST_TVector<TYPE>::error_return=&TAG##_vec_error_return_s; + + #define Declare_TVector_Class_T(TYPE,DEFAULT,ERROR,TAG) \ + static TYPE const TAG##_vec_def_val_s(DEFAULT); \ + static TYPE TAG##_vec_error_return_s(ERROR); \ + \ +- TYPE const *EST_TVector<TYPE>::def_val=&TAG##_vec_def_val_s; \ +- TYPE *EST_TVector<TYPE>::error_return=&TAG##_vec_error_return_s; ++ template <> TYPE const *EST_TVector<TYPE>::def_val=&TAG##_vec_def_val_s; \ ++ template <> TYPE *EST_TVector<TYPE>::error_return=&TAG##_vec_error_return_s; + + #define Declare_TVector(TYPE) Declare_TVector_T(TYPE,TYPE) + #define Declare_TVector_Base(TYPE,DEFAULT,ERROR) Declare_TVector_Base_T(TYPE,DEFAULT,ERROR,TYPE) +diff -upr speech_tools/ling_class/EST_FeatureFunctionContext.cc /tmp/speech_tools/ling_class/EST_FeatureFunctionContext.cc +--- speech_tools/ling_class/EST_FeatureFunctionContext.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/ling_class/EST_FeatureFunctionContext.cc 2004-05-07 08:42:17.083419530 +0100 +@@ -210,7 +210,7 @@ const EST_Item_featfunc EST_FeatureFunct + return NULL; + } + +-Declare_TStringHash(EST_Item_featfunc) ++Declare_TStringHash_Base(EST_Item_featfunc,EST_Item_featfunc(),NULL) + Declare_TList_T(EST_FeatureFunctionPackage *, EST_FeatureFunctionPackageP) + + +diff -upr speech_tools/ling_class/EST_FeatureFunctionPackage.cc /tmp/speech_tools/ling_class/EST_FeatureFunctionPackage.cc +--- speech_tools/ling_class/EST_FeatureFunctionPackage.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/ling_class/EST_FeatureFunctionPackage.cc 2004-05-07 08:42:35.373138615 +0100 +@@ -41,7 +41,7 @@ + #include "ling_class/EST_FeatureFunctionPackage.h" + + +-Declare_TStringHash_T(EST_FeatureFunctionPackage::Entry, EST_FeatureFunctionPackage_Entry) ++Declare_TStringHash_Base_T(EST_FeatureFunctionPackage::Entry, EST_FeatureFunctionPackage::Entry(), NULL, EST_FeatureFunctionPackage_Entry) + + + #if defined(INSTANTIATE_TEMPLATES) +diff -upr speech_tools/ling_class/genxml.cc /tmp/speech_tools/ling_class/genxml.cc +--- speech_tools/ling_class/genxml.cc 2001-04-04 14:11:27.000000000 +0100 ++++ /tmp/speech_tools/ling_class/genxml.cc 2004-05-07 08:42:25.215626830 +0100 +@@ -736,7 +736,7 @@ void GenXML_Parser_Class::error(XML_Pars + est_error_throw(); + } + +-Declare_TStringHash_T(EST_Item_Content *, THash_String_ItemC_P) ++Declare_TStringHash_Base_T(EST_Item_Content *, NULL, NULL, THash_String_ItemC_P) + + #if defined(INSTANTIATE_TEMPLATES) + +diff -upr speech_tools/siod/siod.cc /tmp/speech_tools/siod/siod.cc +--- speech_tools/siod/siod.cc 2001-07-21 01:30:32.000000000 +0100 ++++ /tmp/speech_tools/siod/siod.cc 2004-05-07 08:27:50.492063612 +0100 +@@ -38,7 +38,7 @@ Cambridge, MA 02138 + + extern "C" const char * repl_prompt; + +-Declare_TStringHash_T(EST_Regex *, hash_string_regex) ++Declare_TStringHash_Base_T(EST_Regex *, NULL, NULL, hash_string_regex) + + #if defined(INSTANTIATE_TEMPLATES) + #include "../base_class/EST_THash.cc" +diff -upr speech_tools/stats/dynamic_program.cc /tmp/speech_tools/stats/dynamic_program.cc +--- speech_tools/stats/dynamic_program.cc 2001-04-04 12:55:32.000000000 +0100 ++++ /tmp/speech_tools/stats/dynamic_program.cc 2004-05-07 04:35:21.329564579 +0100 +@@ -50,10 +50,10 @@ template class EST_TVector<EST_Item*>; + #endif + + static EST_Item *const def_val_item_ptr = NULL; +-EST_Item* const *EST_Item_ptr_Vector::def_val = &def_val_item_ptr; ++template <> EST_Item* const *EST_Item_ptr_Vector::def_val = &def_val_item_ptr; + + static EST_Item* error_return_item_ptr = NULL; +-EST_Item* *EST_Item_ptr_Vector::error_return = &error_return_item_ptr; ++template <> EST_Item* *EST_Item_ptr_Vector::error_return = &error_return_item_ptr; + + typedef + float (*local_cost_function)(const EST_Item *item1, +diff -upr speech_tools/testsuite/hash_example.cc /tmp/speech_tools/testsuite/hash_example.cc +--- speech_tools/testsuite/hash_example.cc 2004-05-07 08:54:04.251573170 +0100 ++++ /tmp/speech_tools/testsuite/hash_example.cc 2004-05-07 08:51:12.344606193 +0100 +@@ -135,7 +135,7 @@ cout << "\n"; + } + + +-Declare_THash(int,float) ++Declare_THash_Base(int,float,0,0.0,NULL) + + #if defined(INSTANTIATE_TEMPLATES) + #include "../base_class/EST_THash.cc" diff --git a/app-accessibility/speech-tools/files/speech-tools-gcc3.3.diff b/app-accessibility/speech-tools/files/speech-tools-gcc3.3.diff deleted file mode 100644 index 98d866389260..000000000000 --- a/app-accessibility/speech-tools/files/speech-tools-gcc3.3.diff +++ /dev/null @@ -1,774 +0,0 @@ -diff -Naur sp/base_class/vec_mat_aux.cc speech_tools/base_class/vec_mat_aux.cc ---- sp/base_class/vec_mat_aux.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/base_class/vec_mat_aux.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -453,15 +453,15 @@ - return (a.a_no_check(0,0) * a.a_no_check(1,1)) - - (a.a_no_check(0,1) * a.a_no_check(1,0)); - -- float p; -+ double p; - - // create cofactor matrix - j = 1; - for (i = 0; i < n; ++i) - { -- p = (float)(i + j + 2); // because i & j should start at 1 -+ p = (double)(i + j + 2); // because i & j should start at 1 - // cout << "power " <<p << endl; -- A[i] = pow(-1.0, p) * determinant(sub(a, i, j)); -+ A[i] = pow((double)-1.0, p) * determinant(sub(a, i, j)); - } - // cout << "cofactor " << A; - -diff -Naur sp/config/compilers/gcc_defaults.mak speech_tools/config/compilers/gcc_defaults.mak ---- sp/config/compilers/gcc_defaults.mak 2002-11-29 07:34:50.000000000 -0600 -+++ speech_tools/config/compilers/gcc_defaults.mak 2003-06-22 04:45:11.000000000 -0500 -@@ -45,7 +45,7 @@ - COMPILER_VERSION_COMMAND=$(CXX) -v 2>&1 | tail -1 | sed -e 's/^....//' - - CFLAGS = $(GCC_SYSTEM_OPTIONS) $(CC_OTHER_FLAGS) --CXXFLAGS = $(GCC_SYSTEM_OPTIONS) -fno-implicit-templates $(CC_OTHER_FLAGS) -+CXXFLAGS = $(GCC_SYSTEM_OPTIONS) $(CC_OTHER_FLAGS) - - DEBUG_CCFLAGS = -g - DEBUG_CXXFLAGS = -g -diff -Naur sp/config/config.in speech_tools/config/config.in ---- sp/config/config.in 2002-07-22 17:58:44.000000000 -0500 -+++ speech_tools/config/config.in 2003-06-22 04:45:11.000000000 -0500 -@@ -61,7 +61,7 @@ - # VERBOSE=1 - # DEBUG=1 - # PROFILE=gprof --# SHARED=1 -+SHARED=1 - - ## Directory specific selections which override the above - -diff -Naur sp/grammar/ngram/EST_Ngrammar.cc speech_tools/grammar/ngram/EST_Ngrammar.cc ---- sp/grammar/ngram/EST_Ngrammar.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/grammar/ngram/EST_Ngrammar.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -579,7 +579,7 @@ - return false; - } - -- p_num_states = (int)pow(vocab->length(),p_order-1); -+ p_num_states = (int)pow((double)vocab->length(),(double)p_order-1); - p_states = new EST_NgrammarState[p_num_states]; - for (i=0; i < p_num_states; i++) - p_states[i].init(i,pred_vocab); -@@ -597,7 +597,7 @@ - return false; - } - -- p_num_states = (int)pow(vocab->length(),p_order-1); -+ p_num_states = (int)pow((double)vocab->length(),(double)p_order-1); - p_states = new EST_NgrammarState[p_num_states]; - - return (bool)(p_states != NULL); -diff -Naur sp/grammar/ngram/ngrammar_aux.cc speech_tools/grammar/ngram/ngrammar_aux.cc ---- sp/grammar/ngram/ngrammar_aux.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/grammar/ngram/ngrammar_aux.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -110,7 +110,7 @@ - } - - for(int r=first;r<=last;r++) -- N[r] = exp(a)* pow((float)r, b); -+ N[r] = exp(a)* pow((double)r, (double)b); - - return true; - } -@@ -252,7 +252,7 @@ - for (i=1;i<ff.n();i++) - total += ff(i); - -- ff[0] = pow(n.get_vocab_length(),n.order()) - total; -+ ff[0] = pow((double)n.get_vocab_length(),(double)n.order()) - total; - } - } - break; -@@ -285,7 +285,7 @@ - double total=0; - for (i=1;i<ff.n();i++) - total += ff(i); -- ff[0] = pow(n.get_vocab_length(),this_order) - total; -+ ff[0] = pow((double)n.get_vocab_length(),(double)this_order) - total; - - - -diff -Naur sp/grammar/ngram/ngrammar_io.cc speech_tools/grammar/ngram/ngrammar_io.cc ---- sp/grammar/ngram/ngrammar_io.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/grammar/ngram/ngrammar_io.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -756,7 +756,7 @@ - n.print_freqs(*ost,floor); - else if (n.representation() == EST_Ngrammar::backoff) - { -- int total_ngrams = (int)pow(n.get_vocab_length(),n.order()-1); -+ int total_ngrams = (int)pow((double)n.get_vocab_length(),(double)n.order()-1); - - for(i=0;i<total_ngrams;i++) - { -@@ -903,7 +903,7 @@ - // word in the ngram is the least significant 'bit' - - // number of ngrams, excluding last word, is -- int total_ngrams = (int)pow(n.get_vocab_length(),n.order()-1); -+ int total_ngrams = (int)pow((double)n.get_vocab_length(),(double)n.order()-1); - - for(i=0;i<total_ngrams;i++) - { -diff -Naur sp/grammar/wfst/wfst_train.cc speech_tools/grammar/wfst/wfst_train.cc ---- sp/grammar/wfst/wfst_train.cc 2002-12-26 14:29:40.000000000 -0600 -+++ speech_tools/grammar/wfst/wfst_train.cc 2003-06-22 07:34:42.000000000 -0500 -@@ -95,7 +95,7 @@ - LISP s = NIL; - do - { -- t = ts.get(); -+ t = (EST_String)ts.get(); - id = wfst.in_symbol(t); - if (id == -1) - { -diff -Naur sp/include/EST_Chunk.h speech_tools/include/EST_Chunk.h ---- sp/include/EST_Chunk.h 2001-04-04 06:55:32.000000000 -0500 -+++ speech_tools/include/EST_Chunk.h 2003-06-22 04:55:05.000000000 -0500 -@@ -49,7 +49,9 @@ - # define HAVE_WALLOC_H (1) - #endif - --#include <iostream.h> -+using namespace std; -+ -+#include <iostream> - #include <limits.h> - #include <sys/types.h> - -diff -Naur sp/include/EST_Complex.h speech_tools/include/EST_Complex.h ---- sp/include/EST_Complex.h 2001-04-04 06:55:32.000000000 -0500 -+++ speech_tools/include/EST_Complex.h 2003-06-22 05:28:46.000000000 -0500 -@@ -39,7 +39,7 @@ - - #ifndef __EST_COMPLEX_H__ - #define __EST_COMPLEX_H__ -- -+using namespace std; - #include "EST_iostream.h" - #include <math.h> - -diff -Naur sp/include/EST_dynamic_model.h speech_tools/include/EST_dynamic_model.h ---- sp/include/EST_dynamic_model.h 2001-04-04 06:55:32.000000000 -0500 -+++ speech_tools/include/EST_dynamic_model.h 2003-06-22 04:44:56.000000000 -0500 -@@ -39,7 +39,7 @@ - - #include <stdlib.h> - #include <stdio.h> --#include <fstream.h> -+#include <fstream> - #include "EST.h" - #include "EST_model_types.h" - -diff -Naur sp/include/EST_iostream.h speech_tools/include/EST_iostream.h ---- sp/include/EST_iostream.h 2001-04-04 06:55:32.000000000 -0500 -+++ speech_tools/include/EST_iostream.h 2003-06-22 04:44:56.000000000 -0500 -@@ -50,8 +50,8 @@ - # include <iostream.h> - # include <strstrea.h> - #elif defined(SYSTEM_IS_UNIX) --# include <iostream.h> --# include <strstream.h> -+# include <iostream> -+# include <strstream> - #elif defined(SYSTEM_IS_WIN32) - # include "win32/EST_iostream_win32.h" - # include <strstrea.h> -diff -Naur sp/include/EST_lattice_io.h speech_tools/include/EST_lattice_io.h ---- sp/include/EST_lattice_io.h 2001-04-04 06:55:32.000000000 -0500 -+++ speech_tools/include/EST_lattice_io.h 2003-06-22 04:44:56.000000000 -0500 -@@ -40,8 +40,8 @@ - #ifndef __EST_LATTICE_IO_H__ - #define __EST_LATTICE_IO_H__ - --#include <String.h> --#include <ostream.h> -+#include <String> -+#include <ostream> - #include "sp_common_types.h" - #include "wp_grammar.h" - #include "EST_lattice.h" -diff -Naur sp/include/EST_model_types.h speech_tools/include/EST_model_types.h ---- sp/include/EST_model_types.h 2001-04-04 06:55:32.000000000 -0500 -+++ speech_tools/include/EST_model_types.h 2003-06-22 04:44:56.000000000 -0500 -@@ -39,7 +39,7 @@ - - #include <stdlib.h> - #include <stdio.h> --#include <fstream.h> -+#include <fstream> - #include "EST.h" - #include "EST_Handleable.h" - #include "EST_THandle.h" -diff -Naur sp/include/EST_String.h speech_tools/include/EST_String.h ---- sp/include/EST_String.h 2001-04-04 08:11:27.000000000 -0500 -+++ speech_tools/include/EST_String.h 2003-06-22 05:07:19.000000000 -0500 -@@ -37,15 +37,15 @@ - #ifdef HAVE_CONFIG_H - # include "est_string_config.h" - #endif -- -+using namespace std; - class EST_String; - class EST_Regex; - - #define EST_Regex_max_subexpressions 10 - --#include <string.h> -+#include <string> - #ifdef NO_EST --# include <iostream.h> -+# include <iostream> - #else - # include "EST_iostream.h" - #endif -diff -Naur sp/include/EST_THash.h speech_tools/include/EST_THash.h ---- sp/include/EST_THash.h 2002-12-26 09:48:53.000000000 -0600 -+++ speech_tools/include/EST_THash.h 2003-06-22 07:24:49.000000000 -0500 -@@ -35,8 +35,8 @@ - - #ifndef __EST_THASH_H__ - #define __EST_THASH_H__ -- --#include <iostream.h> -+using namespace std; -+#include <iostream> - #include "EST_String.h" - #include "EST_system.h" - #include "EST_bool.h" -@@ -274,34 +274,76 @@ - * has a different default hash function. - */ - -+template<class V> class EST_TStringHash; -+ - template<class V> --class EST_TStringHash : public EST_THash<EST_String, V> { -+class EST_StringHash_Pair { - public: -+ EST_String k; -+ V v; -+private: -+ EST_StringHash_Pair<V> *next; -+ friend class EST_TStringHash<V>; -+}; -+ -+template<class V> -+class EST_TStringHash : public EST_THash<EST_String, V> { -+private: -+ static V Dummy_Value; -+ unsigned int p_num_entries; -+ unsigned int p_num_buckets; -+ EST_StringHash_Pair<V> **p_buckets; -+ unsigned int (*p_hash_function)(const EST_String &key, unsigned int size); -+ -+protected: -+ struct IPointer_s { unsigned int b; EST_StringHash_Pair<V> *p; }; -+ typedef struct IPointer_s IPointer; -+ void skip_blank(IPointer &ip) const -+ { -+ while (ip.p==NULL && ip.b<p_num_buckets) -+ {ip.b++; ip.p = ip.b<p_num_buckets?p_buckets[ip.b]:0; } -+ } -+ -+ void point_to_first(IPointer &ip) const -+ { ip.b=0; ip.p = ip.b<p_num_buckets?p_buckets[ip.b]:0; -+ skip_blank(ip);} -+ -+ void move_pointer_forwards(IPointer &ip) const -+ { -+ ip.p = ip.p->next; -+ skip_blank(ip); -+ } -+ -+ bool points_to_something(const IPointer &ip) const { return ip.b<p_num_buckets; } -+ -+ EST_StringHash_Pair<V> &points_at(const IPointer &ip) { return *(ip.p); } - -+ friend class EST_TStructIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> >; -+ friend class EST_TRwStructIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> >; -+ friend class EST_TIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> >; -+ friend class EST_TRwIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> >; -+ -+public: - /// Create a string hash table of <parameter>size</parameter> buckets. - EST_TStringHash(int size) : EST_THash<EST_String, V>(size, StringHash) {}; - - /// An entry returned by the iterator is a key value pair. -- typedef EST_Hash_Pair<EST_String, V> Entry; -- --/* struct IPointer_s{ unsigned int b; Entry *p; }; -- typedef struct IPointer_s IPointer; */ -- -+ typedef EST_StringHash_Pair<V> Entry; - - /// Give the iterator a sensible name. -- typedef EST_TStructIterator< EST_THash<EST_String, V>, IPointer, EST_Hash_Pair<EST_String, V> > Entries; -- -- typedef EST_TRwStructIterator< EST_THash<EST_String, V>, IPointer, EST_Hash_Pair<EST_String, V> > RwEntries; -- //@} -+ typedef EST_TStructIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> > Entries; -+ typedef EST_TRwStructIterator< EST_TStringHash<V>, IPointer, EST_StringHash_Pair<V> > RwEntries; - -+protected: -+ struct IPointer_k_s { unsigned int b; EST_StringHash_Pair<V> *p; }; -+ typedef struct IPointer_k_s IPointer_k; -+ -+public: - typedef EST_String KeyEntry; - --/* struct IPointer_k_s { unsigned int b; EST_Hash_Pair<EST_String, V> *p; }; -- typedef struct IPointer_k_s IPointer_k; */ -- - /// Give the iterator a sensible name. -- typedef EST_TIterator< EST_THash<EST_String, V>, IPointer_k, EST_String > KeyEntries; -- typedef EST_TRwIterator< EST_THash<EST_String, V>, IPointer_k, EST_String > KeyRwEntries; -+ typedef EST_TIterator< EST_TStringHash<V>, IPointer_k, EST_String > KeyEntries; -+ typedef EST_TRwIterator< EST_TStringHash<V>, IPointer_k, EST_String > KeyRwEntries; - }; - - -diff -Naur sp/include/EST_TList.h speech_tools/include/EST_TList.h ---- sp/include/EST_TList.h 2001-04-04 06:55:32.000000000 -0500 -+++ speech_tools/include/EST_TList.h 2003-06-22 04:44:56.000000000 -0500 -@@ -43,7 +43,7 @@ - #ifndef __Tlist_H__ - #define __Tlist_H__ - --#include <iostream.h> -+#include <iostream> - #include "EST_common.h" - #include "EST_UList.h" - #include "EST_TSortable.h" -diff -Naur sp/include/EST_TMatrix.h speech_tools/include/EST_TMatrix.h ---- sp/include/EST_TMatrix.h 2001-07-25 06:02:36.000000000 -0500 -+++ speech_tools/include/EST_TMatrix.h 2003-06-22 05:25:18.000000000 -0500 -@@ -41,7 +41,8 @@ - #ifndef __TMatrix_H__ - #define __TMatrix_H__ - --#include <iostream.h> -+using namespace std; -+#include <iostream> - #include "EST_rw_status.h" - #include "EST_TVector.h" - #include "instantiate/EST_TMatrixI.h" -diff -Naur sp/include/EST_TTimeIndex.h speech_tools/include/EST_TTimeIndex.h ---- sp/include/EST_TTimeIndex.h 2001-04-04 08:11:27.000000000 -0500 -+++ speech_tools/include/EST_TTimeIndex.h 2003-06-22 04:44:56.000000000 -0500 -@@ -35,7 +35,7 @@ - #ifndef __EST_TTIMEINDEX_H__ - #define __EST_TTIMEINDEX_H__ - --#include <iostream.h> -+#include <iostream> - - /** A time index for a container. The container defines how to get an - * object and so on, this lets you find a point in the container not -diff -Naur sp/include/EST_TVector.h speech_tools/include/EST_TVector.h ---- sp/include/EST_TVector.h 2003-01-12 15:29:02.000000000 -0600 -+++ speech_tools/include/EST_TVector.h 2003-06-22 05:32:34.000000000 -0500 -@@ -40,7 +40,8 @@ - #ifndef __EST_TVector_H__ - #define __EST_TVector_H__ - --#include <iostream.h> -+using namespace std; -+#include <iostream> - #include "EST_bool.h" - #include "EST_rw_status.h" - -diff -Naur sp/include/EST_UList.h speech_tools/include/EST_UList.h ---- sp/include/EST_UList.h 2001-04-04 06:55:32.000000000 -0500 -+++ speech_tools/include/EST_UList.h 2003-06-22 04:44:56.000000000 -0500 -@@ -41,7 +41,7 @@ - #ifndef __EST_ULIST_H__ - #define __EST_ULIST_H__ - --#include <iostream.h> -+#include <iostream> - #include "EST_common.h" - #include "EST_String.h" - -diff -Naur sp/intonation/tilt/tilt_utils.cc speech_tools/intonation/tilt/tilt_utils.cc ---- sp/intonation/tilt/tilt_utils.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/intonation/tilt/tilt_utils.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -378,9 +378,9 @@ - - x = (t / (dur)) * 2.0; - if (x < 1.0) -- val = pow(x, 2.0); -+ val = pow((double)x, 2.0); - else -- val = 2 - pow((2 - x), 2.0); -+ val = 2 - pow((double)(2.0 - x), 2.0); - - val = (val / 2.0); - -@@ -398,9 +398,9 @@ - x = (t / length) * 2.0; - - if (x < 1.0) -- val = pow(x, curve); -+ val = pow((double)x, (double)curve); - else -- val = 2 - pow((2 - x), curve); -+ val = 2 - pow((double)(2.0 - x), (double)curve); - - val = val / 2.0; - -diff -Naur sp/ling_class/EST_relation_aux.cc speech_tools/ling_class/EST_relation_aux.cc ---- sp/ling_class/EST_relation_aux.cc 2001-04-04 06:55:32.000000000 -0500 -+++ speech_tools/ling_class/EST_relation_aux.cc 2003-06-22 05:38:20.000000000 -0500 -@@ -416,7 +416,7 @@ - if (k->F("end") > lab.head()->F("end")) - break; - -- filename = k->f("file"); -+ filename = (EST_String)k->f("file"); - a.f.set("name", (filename + ext)); - kstart = 0.0; - -@@ -454,7 +454,7 @@ - k = next(k); - kstart = start(k); - a.clear(); -- filename = k->f("file"); -+ filename = (EST_String)k->f("file"); - a.f.set("name", (filename + ext)); - } - else -diff -Naur sp/main/wfst_run_main.cc speech_tools/main/wfst_run_main.cc ---- sp/main/wfst_run_main.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/main/wfst_run_main.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -213,7 +213,7 @@ - (int)R.samples(),R.mean()*100,(1-R.mean())*100); - if (al.present("-perplexity")) - { -- printf("perplexity is %f\n", pow(2.0,(-1 * (sumlogp/count)))); -+ printf("perplexity is %f\n", pow(2.0,(double)(-1 * (sumlogp/count)))); - } - - if (ofd != stdout) -diff -Naur sp/sigpr/filter.cc speech_tools/sigpr/filter.cc ---- sp/sigpr/filter.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/sigpr/filter.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -419,7 +419,7 @@ - - // check frequency_response has dimension 2^N - int N = fastlog2(frequency_response.n()); -- if(frequency_response.n() != (int)pow(2,(float)N)){ -+ if(frequency_response.n() != (int)pow(2,(double)N)){ - cerr << "Desired frequency response must have dimension 2^N" << endl; - return EST_FVector(0); - } -@@ -470,10 +470,10 @@ - int i; - int N=10; // good minimum size - -- int fft_size = (int)pow(2, N); -+ int fft_size = (int)pow(2.0, (double)N); - while(fft_size < order*4){ // rule of thumb !? - N++; -- fft_size = (int)pow(2, N); -+ fft_size = (int)pow(2.0, (double)N); - } - - // freq response is from 0 to sampling freq and therefore -diff -Naur sp/sigpr/sigpr_frame.cc speech_tools/sigpr/sigpr_frame.cc ---- sp/sigpr/sigpr_frame.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/sigpr/sigpr_frame.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -499,7 +499,7 @@ - { - power = 0.0; - for (int i = 0; i < frame.length(); i++) -- power += pow(frame(i), 2.0); -+ power += pow((double)frame(i), 2.0); - - power /= frame.length(); - } -diff -Naur sp/siod/slib_math.cc speech_tools/siod/slib_math.cc ---- sp/siod/slib_math.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/siod/slib_math.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -14,14 +14,13 @@ - - LISP numberp(LISP x) - {if FLONUMP(x) return(truth); else return(NIL);} -- --static LISP plus(LISP args) -+static LISP lplus(LISP args) - { - LISP l; - double sum; - for (sum=0.0,l=args; l != NIL; l=cdr(l)) - { -- if (NFLONUMP(car(l))) err("wrong type of argument to plus",car(l)); -+ if (NFLONUMP(car(l))) err("wrong type of argument to lplus",car(l)); - sum += FLONM(car(l)); - } - return flocons(sum); -@@ -138,7 +137,7 @@ - init_subr_1("number?",numberp, - "(number? DATA)\n\ - Returns t if DATA is a number, nil otherwise."); -- init_lsubr("+",plus, -+ init_lsubr("+",lplus, - "(+ NUM1 NUM2 ...)\n\ - Returns the sum of NUM1 and NUM2 ... An error is given is any argument\n\ - is not a number."); -diff -Naur sp/speech_class/EST_track_aux.cc speech_tools/speech_class/EST_track_aux.cc ---- sp/speech_class/EST_track_aux.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/speech_class/EST_track_aux.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -351,7 +351,7 @@ - mean /= n; - - for (i = 0, var = 0.0; i < tr.num_frames(); ++i) -- var += tr.track_break(i) ? 0.0 : pow(tr.a(i, channel) - mean, 2.0); -+ var += tr.track_break(i) ? 0.0 : pow((double)(tr.a(i, channel) - mean), 2.0); - - var /= n; - sd = sqrt(var); -@@ -369,7 +369,7 @@ - - for (i = 0; i < size; ++i) - if (a.val(i) && b.val(i)) -- sum += pow((a.a(i, channel) - b.a(i, channel)), 2.0); -+ sum += pow((double)(a.a(i, channel) - b.a(i, channel)), 2.0); - - sum = sqrt(sum / size); - return sum; -@@ -461,7 +461,7 @@ - for (p = tl.head(); p; p = next(p)) - for (i = 0; i < tl(p).num_frames(); ++i) - if (!tl(p).track_break(i)) -- var += pow(tl(p).a(i, channel) - mean, 2.0); -+ var += pow((double)(tl(p).a(i, channel) - mean), 2.0); - - var /= n; - sd = sqrt(var); -diff -Naur sp/speech_class/EST_TrackFile.cc speech_tools/speech_class/EST_TrackFile.cc ---- sp/speech_class/EST_TrackFile.cc 2002-09-28 09:15:02.000000000 -0500 -+++ speech_tools/speech_class/EST_TrackFile.cc 2003-06-22 07:30:59.000000000 -0500 -@@ -570,15 +570,15 @@ - - while (1) - { -- t = ts.get_upto_eoln(); -+ t = (EST_String)ts.get_upto_eoln(); - // cout << "t=" << t << endl; - if (t.contains("teaching output included")) - teaching = 1; - if (!t.contains(":")) - break; - str.open_string(t); -- k = str.get_upto(":"); -- v = str.get_upto_eoln(); -+ k = (EST_String)str.get_upto(":"); -+ v = (EST_String)str.get_upto_eoln(); - if (k == "No. of output units") - num_channels = v.Int(); - if (k == "No. of patterns") -diff -Naur sp/speech_class/EST_wave_cuts.cc speech_tools/speech_class/EST_wave_cuts.cc ---- sp/speech_class/EST_wave_cuts.cc 2001-04-04 06:55:32.000000000 -0500 -+++ speech_tools/speech_class/EST_wave_cuts.cc 2003-06-22 07:28:07.000000000 -0500 -@@ -67,7 +67,7 @@ - if (end < start) - continue; - wave_subwave(a, sig, start, end-start); -- filename = k->f("file"); -+ filename = (EST_String)k->f("file"); - a.set_name(filename + ext); - wl.append(a); - start = end; -@@ -87,7 +87,7 @@ - for (k = keylab.head(); k; k = next(k)) - { - end = k->F("end",0); -- key_file_name = k->f("file"); -+ key_file_name = (EST_String)k->f("file"); - if (key_file_name == file) - { - wave_subwave(part, sig, start, end-start); -diff -Naur sp/speech_class/EST_wave_temp.cc speech_tools/speech_class/EST_wave_temp.cc ---- sp/speech_class/EST_wave_temp.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/speech_class/EST_wave_temp.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -83,7 +83,7 @@ - mean /= n; - - for (i = 0, mean = 0.0; i < tr.num_samples(); ++i) -- var += pow(tr.a(i, channel) - mean, 2.0); -+ var += pow((double)(tr.a(i, channel) - mean), 2.0); - - var /= n; - sd = sqrt(var); -@@ -96,7 +96,7 @@ - float sum = 0; - - for (i = 0; i < size; ++i) -- sum += pow((a.a(i, channel) - b.a(i, channel)), 2.0); -+ sum += pow((double)(a.a(i, channel) - b.a(i, channel)), 2.0); - - sum = sqrt(sum / size); - return sum; -@@ -110,7 +110,7 @@ - for (i = 0; i < size; ++i) - { - // cout << i << " " << a.a(i, channel) << " " << b.a(i, channel) << endl; -- sum += fabs(a.a(i, channel) - b.a(i, channel)); -+ sum += fabs((double)(a.a(i, channel) - b.a(i, channel))); - } - return sum / size; - } -diff -Naur sp/speech_class/ssff.cc speech_tools/speech_class/ssff.cc ---- sp/speech_class/ssff.cc 2001-04-04 06:55:32.000000000 -0500 -+++ speech_tools/speech_class/ssff.cc 2003-06-22 07:29:24.000000000 -0500 -@@ -99,7 +99,7 @@ - - while (ts.peek() != "-----------------") - { -- c = ts.get(); -+ c = (EST_String)ts.get(); - if (c == "Comment") - ts.get_upto_eoln(); - else if (c == "Start_Time") -@@ -124,9 +124,9 @@ - } - else if (c == "Column") - { -- name = ts.get(); -- type = ts.get(); -- size = ts.get(); -+ name = (EST_String)ts.get(); -+ type = (EST_String)ts.get(); -+ size = (EST_String)ts.get(); - cname = EST_String("Channel_")+itoString(num_channels); - channels.set(cname+".name",name); - channels.set(cname+".type",type); -@@ -141,7 +141,7 @@ - (c == "preemphasis") || - (c == "frame_duration")) - { -- type = ts.get(); -+ type = (EST_String)ts.get(); - if (type == "SHORT") - tr.f_set(c,atoi(ts.get().string())); - else if (type == "DOUBLE") -diff -Naur sp/stats/EST_multistats.cc speech_tools/stats/EST_multistats.cc ---- sp/stats/EST_multistats.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/stats/EST_multistats.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -89,7 +89,7 @@ - { - v[j] = 0.0; - for (i = 0; i < m.num_rows(); ++i) -- v[j] += pow(m(i, j) - u(j), 2.0); -+ v[j] += pow((double)(m(i, j) - u(j)), 2.0); - v[j] /= m.num_rows() - 1; // sample variance - } - -@@ -183,7 +183,7 @@ - { - P(i, j) = 0.0; - for (k = 0; k < p; ++k) -- P(i, j) += pow(gu(i, k) - gu(j, k), 2.0) / gv(k); -+ P(i, j) += pow((double)(gu(i, k) - gu(j, k)), 2.0) / gv(k); - P(i, j) /= p; - } - return P; -@@ -228,7 +228,7 @@ - float P = 0.0; - - for (k = 0; k < n; ++k) -- P += pow(ui(k) - uj(k), 2.0) / v(k); -+ P += pow((double)(ui(k) - uj(k)), 2.0) / v(k); - P /= n; - - return P; -diff -Naur sp/stats/wagon/dlist.cc speech_tools/stats/wagon/dlist.cc ---- sp/stats/wagon/dlist.cc 2001-04-04 08:11:28.000000000 -0500 -+++ speech_tools/stats/wagon/dlist.cc 2003-06-22 07:32:46.000000000 -0500 -@@ -83,7 +83,7 @@ - - for (p=dataset.head(); p != 0; p=next(p)) - { -- predict = dlist->predict(*dataset(p)); -+ predict = (EST_String)dlist->predict(*dataset(p)); - type = dataset.ftype(0); - real = wgn_discretes[type].name(dataset(p)->get_int_val(0)); - pairs.add_item(real,predict,1); -diff -Naur sp/stats/wagon/wagon.cc speech_tools/stats/wagon/wagon.cc ---- sp/stats/wagon/wagon.cc 2001-09-30 14:13:33.000000000 -0500 -+++ speech_tools/stats/wagon/wagon.cc 2003-06-22 07:33:26.000000000 -0500 -@@ -276,7 +276,7 @@ - for (p=dataset.head(); p != 0; p=next(p)) - { - pnode = tree.predict_node((*dataset(p))); -- predict = pnode->get_impurity().value(); -+ predict = (EST_String)pnode->get_impurity().value(); - if (wgn_count_field == -1) - count = 1.0; - else -diff -Naur sp/testsuite/hash_example.cc speech_tools/testsuite/hash_example.cc ---- sp/testsuite/hash_example.cc 2003-06-22 04:36:32.000000000 -0500 -+++ speech_tools/testsuite/hash_example.cc 2003-06-22 04:44:56.000000000 -0500 -@@ -71,8 +71,8 @@ - - EST_THash<int,float> logs(100); - --logs.add_item(12, log(12)); --logs.add_item(34, log(34)); -+logs.add_item(12, log(12.0)); -+logs.add_item(34, log(34.0)); - - cout << "length of `fred' = " << lengths.val("fred") << "\n"; - cout << "log of 34' = " << logs.val(34) << "\n"; -diff -Naur sp/testsuite/hash_regression.cc speech_tools/testsuite/hash_regression.cc ---- sp/testsuite/hash_regression.cc 2002-12-27 07:00:24.000000000 -0600 -+++ speech_tools/testsuite/hash_regression.cc 2003-06-22 07:43:57.000000000 -0500 -@@ -71,7 +71,7 @@ - { - EST_String line; - -- line = file.get(); -+ line = (EST_String)file.get(); - - if (file.eof()) - break; -diff -Naur sp/utils/EST_ServiceTable.cc speech_tools/utils/EST_ServiceTable.cc ---- sp/utils/EST_ServiceTable.cc 2002-12-26 09:46:20.000000000 -0600 -+++ speech_tools/utils/EST_ServiceTable.cc 2003-06-22 05:24:16.000000000 -0500 -@@ -42,8 +42,8 @@ - #include "EST_error.h" - #include "EST_Token.h" - #include "EST_ServiceTable.h" --#include <iomanip.h> --#include <iostream.h> -+#include <iomanip> -+#include <iostream> - #include <time.h> - - #if defined(SYSTEM_IS_WIN32) -@@ -142,7 +142,7 @@ - - str.must_get("="); - -- EST_Token val = str.get_upto_eoln(); -+ EST_String val = str.get_upto_eoln(); - - if (!entries.t.present(name)) - { -@@ -160,7 +160,7 @@ - else if (type=="type") - entry.type=val; - else if (type=="port") -- entry.port=val; -+ entry.port=strtol(val, NULL, 10); - else if (type=="cookie") - entry.cookie=val; - else - diff --git a/app-accessibility/speech-tools/speech-tools-1.2.3.ebuild b/app-accessibility/speech-tools/speech-tools-1.2.3.ebuild index 99e8688c3ff9..618b1b980796 100644 --- a/app-accessibility/speech-tools/speech-tools-1.2.3.ebuild +++ b/app-accessibility/speech-tools/speech-tools-1.2.3.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2004 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-accessibility/speech-tools/speech-tools-1.2.3.ebuild,v 1.7 2004/04/22 06:12:24 eradicator Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-accessibility/speech-tools/speech-tools-1.2.3.ebuild,v 1.8 2004/05/18 23:49:37 vapier Exp $ inherit eutils fixheadtails @@ -13,9 +13,10 @@ SRC_URI="http://www.cstr.ed.ac.uk/download/festival/1.4.3/${MY_P}-release.tar.gz LICENSE="FESTIVAL BSD as-is" SLOT="0" KEYWORDS="x86 ~ppc sparc amd64" +IUSE="doc" RDEPEND="virtual/glibc" -IUSE="doc" + S="${WORKDIR}/speech_tools" src_unpack() { @@ -24,10 +25,9 @@ src_unpack() { cd ${S} use doc && unpack festdoc-1.4.2.tar.gz && mv festdoc-1.4.2 festdoc - epatch ${FILESDIR}/${PN}-gcc3.3.diff + epatch ${FILESDIR}/${PV}-gcc3.4.patch ht_fix_file config.guess - sed -i 's:-O3:$(CFLAGS):' base_class/Makefile - sed -i 's/-fno-implicit-templates //' config/compilers/gcc_defaults.mak + sed -i 's:-O3:$(OPTIMISE_CXXFLAGS):' base_class/Makefile # Compile fix for #41329. sed -i 's/-fpic/-fPIC/' config/compilers/gcc_defaults.mak @@ -35,7 +35,10 @@ src_unpack() { src_compile() { econf || die - emake -j1 || die + emake -j1 \ + OPTIMISE_CXXFLAGS="${CXXFLAGS}" \ + OPTIMISE_CCFLAGS="${CFLAGS}" \ + || die } src_install() { @@ -45,7 +48,7 @@ src_install() { rm -f Makefile dodir /usr/lib/speech-tools/share/testsuite - for file in *; do + for file in * ; do dobin ${file} dosed "s:${S}/testsuite/data:/usr/lib/speech-tools/share/testsuite:g" /usr/lib/speech-tools/bin/${file} testsuite/data dosed "s:${S}/bin:/usr/lib/speech-tools/bin:g" /usr/lib/speech-tools/bin/${file} @@ -81,7 +84,7 @@ src_install() { cd ${S}/lib dodoc cstrutt.dtd - if use doc; then + if use doc ; then cd ${S}/festdoc/speech_tools/doc dohtml * fi |