func2 won't be called. It is stated in C# Language Specification so Mono compiler must act according to these rules.
MSDN http://msdn.microsoft.com/en-us/library/aa664622(v=vs.71).aspx:
The attribute Conditional enables the definition of conditional methods. The Conditional attribute indicates a condition by testing a conditional compilation symbol. Calls to a conditional method are either included or omitted depending on whether this symbol is defined at the point of the call. If the symbol is defined, the call is included; otherwise, the call (including evaluation of the parameters of the call) is omitted.