CPP strips out C-style comments
The following code fails to compiler with ``y not in scope
:
{-# LANGUAGE CPP #-}
module Foo (x) where
x = ([y], z)
-- Oh, noes! Here comes a C-style comment: /usr/local/*
y = 42
-- And now let's close it */Setup.hs accidentally
z = 23
Apparently, the part between the /*
and the */
got stripped out by the preprocessor. If we use a gcc
's CPP mode, we should at least pass it some options to prevent this from happening.
Trac metadata
Trac field | Value |
---|---|
Version | 6.10.2 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Driver |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |