Closed
Description
It appears that (at least on Linux) if you pass a block of code to a macro, the line numbers for code in the block become the line of the start of the macro invocation rather than the actual lines within the block. This makes debugging hard.
Consider:
call_macro_defined_somewhere!({
one();
two();
three();
});
Line reported for one()
, two()
and three()
is the line that call_macro_defined_somewhere!({
is on. Expected line number for one()
to be the line number for call_macro_defined_somewhere!({
plus one, etc.