FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Redhat > Fedora User

 
 
LinkBack Thread Tools
 
Old 04-01-2011, 10:29 PM
les
 
Default sinf compiler error I don't understand

First let me say, that while I have used C++ I don't normally use it for
my work and so am not throughly familiar with what it does, so if this
is due to a C++ error, please be gentle.

I am working on some DSP code I developed a long time ago, and now want
to port it to 64 bit. I have read several articles on the differences
in C and C++ between 32 and 64 bit, but this has me stymied.

Here is the smallest sample I have been working with to show the current
error:

#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

main()
{
long double temp;
printf ("M_PI=%e
",M_PI);
printf ("sin 90 = %e
",sinf(M_PI/2));
temp=M_PI/2.0;
// the following line won't compile for temp
// regardless of how temp is declared (float, double, long double)
// printf ("sin 90 = %e
",sinf(temp));
}


Clearly sinf is recognized, and compiles and runs. It returns 1.000 as
expected for M_PI/2. But the line that is commented out will not
compile.

If you can see the issue here, please let me know.

MY system is:
Release Kernel Linux 2.6.35.``-83.fc14.x86_64
GNOME 2.32.0
Hardware
Memory 7.8GiB
AMD Phenom(tm) II X6 1035T
Lots of disk space

yum info GCC shows:
Name : gcc
Arch : x86_64
Version : 4.5.1
Release : 4.fc14

Thanks,
Les H

--
users mailing list
users@lists.fedoraproject.org
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
 
Old 04-02-2011, 11:13 PM
Ian Malone
 
Default sinf compiler error I don't understand

On 1 April 2011 23:29, les <hlhowell@pacbell.net> wrote:
> First let me say, that while I have used C++ I don't normally use it for
> my work and so am not throughly familiar with what it does, so if this
> is due to a C++ error, please be gentle.
>
> I am working on some DSP code I developed a long time ago, and now want
> to port it to 64 bit. *I have read several articles on the differences
> in C and C++ between 32 and 64 bit, but this has me stymied.
>
> Here is the smallest sample I have been working with to show the current
> error:
>
> #include <math.h>
> #include <stdlib.h>
> #include <stdio.h>
> #include <string.h>
>
> main()
> {
> * *long double temp;
> * *printf ("M_PI=%e
",M_PI);
> * *printf ("sin 90 = %e
",sinf(M_PI/2));
> * *temp=M_PI/2.0;
> // the following line won't compile for temp
> // regardless of how temp is declared (float, double, long double)
> // * printf ("sin 90 = %e
",sinf(temp));
> }
>
>
> Clearly sinf is recognized, and compiles and runs. *It returns 1.000 as
> expected for M_PI/2. *But the line that is commented out will not
> compile.
>
> If you can see the issue here, please let me know.
>

> yum info GCC shows:
> Name * * * *: gcc
> Arch * * * *: x86_64
> Version * * : 4.5.1
> Release * * : 4.fc14
>

F13 here:
Name : gcc
Arch : x86_64
Version : 4.4.5
Release : 2.fc13

How are you compiling it? If I uncomment the last printf then compile like:
$ g++ test.cc -Wall -o test

I get:
test.cc:6: warning: ISO C++ forbids declaration of ‘main’ with no type

But otherwise compiles and runs as expected. I'd point out that sinf
is float precision, sin is double and sinl long double. With c++ I
might expect type issues (as you did in your comment), but struggling
to see anything wrong with this. Any particular error when it fails to
compile?

--
imalone
--
users mailing list
users@lists.fedoraproject.org
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
 

Thread Tools




All times are GMT. The time now is 07:27 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org