mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-10-31 05:35:35 +00:00
ieee80.c: Fix -Wmissing-prototypes warnings (create an ieee80.h header file).
This commit is contained in:
@@ -391,8 +391,8 @@ The `ieee80.c` implementation is taken directly from
|
|||||||
[ToFromIEEE.c.txt](http://www.realitypixels.com/turk/opensource/ToFromIEEE.c.txt)
|
[ToFromIEEE.c.txt](http://www.realitypixels.com/turk/opensource/ToFromIEEE.c.txt)
|
||||||
which has been made available for use in Open Source applications per the
|
which has been made available for use in Open Source applications per the
|
||||||
[license statement](COPYING.IEEE) on http://www.realitypixels.com/turk/opensource/.
|
[license statement](COPYING.IEEE) on http://www.realitypixels.com/turk/opensource/.
|
||||||
The only modification made to the code is to comment out the `TEST_FP` define
|
The only modifications made to the code is to comment out the `TEST_FP` define
|
||||||
to make it useable in the eSpeak NG library.
|
to make it useable in the eSpeak NG library, and to fix compiler warnings.
|
||||||
|
|
||||||
The `getopt.c` compatibility implementation for getopt support on Windows is
|
The `getopt.c` compatibility implementation for getopt support on Windows is
|
||||||
taken from the NetBSD `getopt_long` implementation, which is licensed under a
|
taken from the NetBSD `getopt_long` implementation, which is licensed under a
|
||||||
|
|||||||
@@ -49,15 +49,10 @@
|
|||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
|
#include "ieee80.h"
|
||||||
|
|
||||||
typedef float Single;
|
typedef float Single;
|
||||||
|
|
||||||
#ifndef applec
|
|
||||||
typedef double defdouble;
|
|
||||||
#else applec
|
|
||||||
typedef long double defdouble;
|
|
||||||
#endif applec
|
|
||||||
|
|
||||||
#ifndef THINK_C
|
#ifndef THINK_C
|
||||||
typedef double Double;
|
typedef double Double;
|
||||||
#else THINK_C
|
#else THINK_C
|
||||||
|
|||||||
@@ -0,0 +1,62 @@
|
|||||||
|
/* Copyright (C) 1989-1991 Apple Computer, Inc.
|
||||||
|
*
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Warranty Information
|
||||||
|
* Even though Apple has reviewed this software, Apple makes no warranty
|
||||||
|
* or representation, either express or implied, with respect to this
|
||||||
|
* software, its quality, accuracy, merchantability, or fitness for a
|
||||||
|
* particular purpose. As a result, this software is provided "as is,"
|
||||||
|
* and you, its user, are assuming the entire risk as to its quality
|
||||||
|
* and accuracy.
|
||||||
|
*
|
||||||
|
* This code may be used and freely distributed as long as it includes
|
||||||
|
* this copyright notice and the above warranty information.
|
||||||
|
*
|
||||||
|
* Machine-independent I/O routines for IEEE floating-point numbers.
|
||||||
|
*
|
||||||
|
* NaN's and infinities are converted to HUGE_VAL or HUGE, which
|
||||||
|
* happens to be infinity on IEEE machines. Unfortunately, it is
|
||||||
|
* impossible to preserve NaN's in a machine-independent way.
|
||||||
|
* Infinities are, however, preserved on IEEE machines.
|
||||||
|
*
|
||||||
|
* These routines have been tested on the following machines:
|
||||||
|
* Apple Macintosh, MPW 3.1 C compiler
|
||||||
|
* Apple Macintosh, THINK C compiler
|
||||||
|
* Silicon Graphics IRIS, MIPS compiler
|
||||||
|
* Cray X/MP and Y/MP
|
||||||
|
* Digital Equipment VAX
|
||||||
|
* Sequent Balance (Multiprocesor 386)
|
||||||
|
* NeXT
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* Implemented by Malcolm Slaney and Ken Turkowski.
|
||||||
|
*
|
||||||
|
* Malcolm Slaney contributions during 1988-1990 include big- and little-
|
||||||
|
* endian file I/O, conversion to and from Motorola's extended 80-bit
|
||||||
|
* floating-point format, and conversions to and from IEEE single-
|
||||||
|
* precision floating-point format.
|
||||||
|
*
|
||||||
|
* In 1991, Ken Turkowski implemented the conversions to and from
|
||||||
|
* IEEE double-precision format, added more precision to the extended
|
||||||
|
* conversions, and accommodated conversions involving +/- infinity,
|
||||||
|
* NaN's, and denormalized numbers.
|
||||||
|
*/
|
||||||
|
#ifndef IEEE_H
|
||||||
|
#define IEEE_H
|
||||||
|
|
||||||
|
#ifndef applec
|
||||||
|
typedef double defdouble;
|
||||||
|
#else applec
|
||||||
|
typedef long double defdouble;
|
||||||
|
#endif applec
|
||||||
|
|
||||||
|
defdouble ConvertFromIeeeSingle( char *bytes);
|
||||||
|
defdouble ConvertFromIeeeDouble( char *bytes);
|
||||||
|
defdouble ConvertFromIeeeExtended(char *bytes);
|
||||||
|
|
||||||
|
void ConvertToIeeeSingle( defdouble num, char *bytes);
|
||||||
|
void ConvertToIeeeDouble( defdouble num, char *bytes);
|
||||||
|
void ConvertToIeeeExtended(defdouble num, char *bytes);
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -35,8 +35,7 @@
|
|||||||
#include "voice.h"
|
#include "voice.h"
|
||||||
#include "synthesize.h"
|
#include "synthesize.h"
|
||||||
#include "spect.h"
|
#include "spect.h"
|
||||||
|
#include "ieee80.h"
|
||||||
extern double ConvertFromIeeeExtended(unsigned char *bytes);
|
|
||||||
|
|
||||||
extern unsigned char pk_shape1[];
|
extern unsigned char pk_shape1[];
|
||||||
extern int pk_select;
|
extern int pk_select;
|
||||||
@@ -56,7 +55,7 @@ static double read_double(FILE *stream)
|
|||||||
{
|
{
|
||||||
unsigned char bytes[10];
|
unsigned char bytes[10];
|
||||||
fread(bytes, sizeof(char), 10, stream);
|
fread(bytes, sizeof(char), 10, stream);
|
||||||
return ConvertFromIeeeExtended(bytes);
|
return ConvertFromIeeeExtended((char *)bytes);
|
||||||
}
|
}
|
||||||
|
|
||||||
float polint(float xa[], float ya[], int n, float x)
|
float polint(float xa[], float ya[], int n, float x)
|
||||||
|
|||||||
Reference in New Issue
Block a user