{-# LANGUAGE CPP #-} {-# OPTIONS -DMODULE #-} -- works because Pragmas are parsed only /before/ CPP has kicked in #ifdef MODULE module Defs where #endif #define PROP * #define SET (* -> PROP) #define SET1 (SET -> PROP) #define SET2 (SET1 -> PROP) #define SET3 (SET2 -> PROP)