It appears that the make system does not track .h -> .hsc include
dependencies when building the .hs targets.

I came across this when warnings I saw in "make clean all" did not
appear upon touching
a certain header. N.B. this is while building a PPC cross-compiler to
be hosted on x86_64.

Here is the relevant warnings log:

  HSC2HS libraries/hpc/dist-install/build/Trace/Hpc/Reflect.hs
In file included from ghc-head-x86_64/includes/Stg.h:225,
                 from ghc-head-x86_64/includes/Rts.h:30,
                 from Reflect.hsc:38:
ghc-head-x86_64/includes/stg/TailCalls.h:125:1: warning: "JMP_" redefined
ghc-head-x86_64/includes/stg/TailCalls.h:93:1: warning: this is the
location of the previous definition
In file included from ghc-head-x86_64/includes/Rts.h:216,
                 from Reflect.hsc:38:
ghc-head-x86_64/includes/rts/storage/Block.h: In function 'Bdescr':
ghc-head-x86_64/includes/rts/storage/Block.h:137: warning: cast from
pointer to integer of different size
ghc-head-x86_64/includes/rts/storage/Block.h:138: warning: cast from
pointer to integer of different size
ghc-head-x86_64/includes/rts/storage/Block.h:139: warning: cast to
pointer from integer of different size
ghc-head-x86_64/includes/rts/storage/Block.h: In function 'round_to_mblocks':
ghc-head-x86_64/includes/rts/storage/Block.h:272: warning: cast from
pointer to integer of different size
ghc-head-x86_64/includes/rts/storage/Block.h:276: warning: cast from
pointer to integer of different size
ghc-head-x86_64/includes/rts/storage/Block.h:284: warning: cast from
pointer to integer of different size
ghc-head-x86_64/includes/rts/storage/Block.h: In function 'round_up_to_mblocks':
ghc-head-x86_64/includes/rts/storage/Block.h:292: warning: cast from
pointer to integer of different size
ghc-head-x86_64/includes/rts/storage/Block.h:294: warning: cast from
pointer to integer of different size
In file included from ghc-head-x86_64/includes/Rts.h:217,
                 from Reflect.hsc:38:
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h: In function
'GET_CLOSURE_TAG':
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h:192: warning:
cast from pointer to integer of different size
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h: In function
'UNTAG_CLOSURE':
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h:198: warning:
cast from pointer to integer of different size
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h:198: warning:
cast to pointer from integer of different size
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h: In function 'TAG_CLOSURE':
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h:204: warning:
cast from pointer to integer of different size
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h:204: warning:
cast to pointer from integer of different size
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h: In function
'LOOKS_LIKE_INFO_PTR_NOT_NULL':
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h:234: warning:
cast to pointer from integer of different size
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h: In function
'LOOKS_LIKE_CLOSURE_PTR':
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h:245: warning:
cast from pointer to integer of different size
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h: In function
'stack_frame_sizeW':
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h:412: warning:
cast from pointer to integer of different size
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h:412: warning:
cast to pointer from integer of different size
ghc-head-x86_64/includes/rts/storage/ClosureMacros.h:415: warning:
cast to pointer from integer of different size
In file included from ghc-head-x86_64/includes/Rts.h:236,
                 from Reflect.hsc:38:
ghc-head-x86_64/includes/rts/Stable.h: In function 'deRefStablePtr':
ghc-head-x86_64/includes/rts/Stable.h:37: warning: cast from pointer
to integer of different size

(I am still puzzled why these warnings appear at all, since W_ should
be of the same bitwidth as void*.)

The dependencies are not tracked for mkDerivedConstants.c either -- I
am looking into this one -- as
it could probably be tackled just like other .c sources.

Cheers,

    Gabor

_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to