#11073: remove the spkg/base repo?
---------------------------+------------------------------------------------
   Reporter:  jhpalmieri   |       Owner:  GeorgSWeber    
       Type:  enhancement  |      Status:  new            
   Priority:  blocker      |   Milestone:  sage-4.7.1     
  Component:  build        |    Keywords:  scripts base hg
     Author:               |    Upstream:  N/A            
   Reviewer:               |      Merged:                 
Work_issues:               |  
---------------------------+------------------------------------------------

Comment(by jdemeyer):

 Replying to [comment:7 drkirkby]:
 > It's pretty dumb, as it forces a long to be 4 bytes with:
 >
 > {{{
 > typedef unsigned long       int_fast32_t;
 > }}}
 >
 > which is obviously invalid on 64-bit builds.

 It is invalid, but not for the reason you state.

 The problem is that `int_fast32_t` is supposed to be '''signed''', while
 `unsigned long` is '''unsigned'''.  As for size, the type `int_fast32_t`
 is required to be ''at least'' 32 bits, not ''exactly'' 32 bits, so the
 following would be correct, both on 32-bit and 64-bit machines:
 {{{
 typedef long            int_fast32_t;
 }}}

 In fact, on my 64-bit Linux laptop, the types `int_fast16_t` and
 `int_fast32_t` are `typedef`ed to be 64-bit `long`s.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11073#comment:8>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to