Opened 8 years ago

Closed 8 years ago

#3522 closed bug (fixed)

conflicting Block.h on Snow Leopard

Reported by: PaulLiu Owned by:
Priority: normal Milestone:
Component: Compiler (FFI) Version: 6.10.4
Keywords: Cc:
Operating System: MacOS X Architecture: x86
Type of failure: None/Unknown Test Case:
Blocked By: Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:


Using GHC to compile C programs that includes <CoreServices/CoreServices.h> will result in the following error:

In file included from /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/FSEvents.h:28,
                 from /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/CarbonCore.h:218,
                 from /System/Library/Frameworks/CoreServices.framework/Frameworks/AE.framework/Headers/AE.h:20,
                 from /System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:21,

                 from test.c:1:0: 

     error: expected specifier-qualifier-list before ‘StgPtr’


This is because somewhere down CoreServices.h it includes Block.h, and expects it to be /usr/include/Block.h, which is a new file introduced since Snow Leopard (OS X 10.6). This is in direct conflict to the Block.h under GHC's include directory, which is somehow searched prior to the system directory.

Change History (1)

comment:1 Changed 8 years ago by simonmar

difficulty: Unknown
Resolution: fixed
Status: newclosed

Block.h is now rts/storage/Block.h in 6.12.1.

Note: See TracTickets for help on using tickets.