[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] babel C, C++, D enhancement
From: |
Thierry Banel |
Subject: |
Re: [O] babel C, C++, D enhancement |
Date: |
Tue, 17 Jun 2014 22:51:04 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.0 |
Le 17/06/2014 19:16, Achim Gratz a écrit :
> Thierry Banel writes:
>> You are right, INT_MAX is the C++ constant to compare to.
>> It is defined in limits.h
>>
>> I'm not sure I want to locate limits.h (where is it ? are there several
>> versions ?),
>> and parse it, all from within Emacs-lisp...
> No, this isn't something you should even try. The only method that is
> known to work is what autoconf does: compile a program and check the
> output.
Absolutely right.
Or use "getconf INT_MAX" as suggested by Nick Dokos, but this does not
works everywhere.
>> And this will have to be done for all languages (Python, Perl, Java,
>> and so on), not just C++.
> Let's stick with C(++) and solve that problem first, that there is a lot
> of boilerplate code in Babel language support that should be lifted off
> elsewhere is a discussion for another time.
I do agree.
By the way, other languages may not be as tricky.
- Java specifies int to be exactly 32 bits, long to be 64 bits.
http://en.wikibooks.org/wiki/Java_Programming/Primitive_Types
- Same goes for D.
http://dlang.org/type.html
- In C++ there is a new specification with types like:
|int_least32_t| // at least 32 bits
|int32_t // exactly 32 bits|
http://en.cppreference.com/w/cpp/types/integer
>> Or we could assume that INT_MAX is always 2147483647.
>> (Which of course is not true).
> You've just made compilers customizable. For a start, make those
> constants customizable per compiler as well?
>
Thomas S. Dye suggested just that.
Should we throw this detail at the user ?
She will have a hard time figuring out why we bother her with integer size.
Regards
Thierry
- Re: [O] babel C, C++, D enhancement, (continued)
- Re: [O] babel C, C++, D enhancement, Eric Schulte, 2014/06/08
- Re: [O] babel C, C++, D enhancement, Thierry Banel, 2014/06/09
- Re: [O] babel C, C++, D enhancement, Achim Gratz, 2014/06/13
- Re: [O] babel C, C++, D enhancement, Eric Schulte, 2014/06/13
- Re: [O] babel C, C++, D enhancement, Thierry Banel, 2014/06/13
- Re: [O] babel C, C++, D enhancement, Achim Gratz, 2014/06/16
- Re: [O] babel C, C++, D enhancement, Thierry Banel, 2014/06/16
- Re: [O] babel C, C++, D enhancement, Thomas S. Dye, 2014/06/16
- Re: [O] babel C, C++, D enhancement, Nick Dokos, 2014/06/16
- Re: [O] babel C, C++, D enhancement, Achim Gratz, 2014/06/17
- Re: [O] babel C, C++, D enhancement,
Thierry Banel <=
- Re: [O] babel C, C++, D enhancement, Bastien, 2014/06/13
- Re: [O] conforming commit messages Was: babel C, C++, D enhancement, Eric Schulte, 2014/06/13
- Re: [O] babel C, C++, D enhancement, Eric Abrahamsen, 2014/06/13
- Re: [O] Patch for testing `org-open-at-point', Achim Gratz, 2014/06/02
- Re: [O] Patch for testing `org-open-at-point', Bastien, 2014/06/03