anchor.diff:      end;
   
   
  -expand([{var, "__LINE__"}|Rem], Out, SelfRef, Defs, IncFile, IncDir, IfCou, Err, War, L, FN) ->
  +expand([{var, "__LINE__"}|Rem], Out, SelfRef, Defs, IncFile, IncDir, Mio, IfCou, Err, War, L, FN) ->
       LL = io_lib:format("~p",[L]),
  -    expand(Rem, [LL | Out], SelfRef, Defs, IncFile, IncDir, IfCou, Err, War, L, FN);
  -
  -expand([{var, "__FILE__"}|Rem], Out, SelfRef, Defs, IncFile, IncDir, IfCou, Err, War, L, FN) ->
  -    expand(Rem, [$",FN,$" | Out], SelfRef, Defs, IncFile, IncDir, IfCou, Err, War, L, FN);
  -
  -expand([{var, "__DATE__"}|Rem], Out, SelfRef, Defs, IncFile, IncDir, IfCou, Err, War, L, FN) ->
  +    expand(Rem, [LL | Out], SelfRef, Defs, IncFile, IncDir, update_mio(Mio), IfCou, Err, War, L, FN);
  +
  +expand([{var, "__FILE__"}|Rem], Out, SelfRef, Defs, IncFile, Mio, IncDir, IfCou, Err, War, L, FN) ->
  +    expand(Rem, [$",FN,$" | Out], SelfRef, Defs, IncFile, IncDir, update_mio(Mio), IfCou, Err, War, L, FN);
  +
  +expand([{var, "__DATE__"}|Rem], Out, SelfRef, Defs, IncFile, IncDir, Mio, IfCou, Err, War, L, FN) ->
       {{Y,M,D},{_H,_Mi,_S}} = calendar:universal_time(),
       Date = io_lib:format("\"~s ~p ~p\"",[month(M),D,Y]),
  -    expand(Rem, [Date | Out], SelfRef, Defs, IncFile, IncDir, IfCou, Err, War, L, FN);
  -
  -expand([{var, "__TIME__"}|Rem], Out, SelfRef, Defs, IncFile, IncDir, IfCou, Err, War, L, FN) ->
  +    expand(Rem, [Date | Out], SelfRef, Defs, IncFile, IncDir, update_mio(Mio), IfCou, Err, War, L, FN);
  +
  +expand([{var, "__TIME__"}|Rem], Out, SelfRef, Defs, IncFile, IncDir, Mio, IfCou, Err, War, L, FN) ->
       {{_Y,_M,_D},{H,Mi,S}} = calendar:universal_time(),
       HS = if H < 10 -> "0"++integer_to_list(H);
   	    true -> integer_to_list(H)
  
positive.code:     %% Get all definitions from preprocessor commnads
      %% and merge them on top of the file collected.
      CLDefs = get_cmd_line_defs(Flags),
      expand(List, [], [], CLDefs, [FileName], IncDir, check_all, [], [], 1, FileName).
  
  expand(List, Defs, Err, War, [FileName|IncFile], IncDir) ->
      expand(List, [], [], Defs, [FileName|IncFile], IncDir, check_all, Err, War, 1, FileName).
  
  
  %%=======================================================
  %% Main loop for the expansion
  %%=======================================================
  expand([], Out, _SelfRef, Defs, _IncFile, _IncDir, IfCou, Err, War, _L, _FN) ->
  %    io:format("~n   ===============~n"),
  %    io:format("   definitions    ~p~n",[lists:reverse(Defs)]),
  %    io:format("   found warnings ~p~n",[lists:reverse(War)]),
  %    io:format("   found errors   ~p~n",[lists:reverse(Err)]),
  %    io:format("   ===============~n~n~n"),
      {Out, Err, War, Defs, IfCou};
  
  expand([{file_info, Str} | Rem], Out, SelfRef, Defs, IncFile, IncDir, IfCou, Err, War, L, FN) ->
      expand(Rem, Str++Out, SelfRef, Defs, IncFile, IncDir, IfCou, Err, War, L, FN);
  
  %%---------------------------------------
  %% Searching for endif, 
  %% i.e skip all source lines until matching
  %% end if is encountered
  %%---------------------------------------
  expand([{command,Command} | Rem], Out, SelfRef, Defs, IncFile, IncDir, {endif, Endif, IfLine}, Err, War, L, FN) 
    when Command == "ifdef" ->
      {_Removed, Rem2, _Nl} = read_to_nl(Rem),
      IfCou2 = {endif, Endif+1, IfLine},
      expand(Rem2, Out, SelfRef, Defs, IncFile, IncDir, IfCou2, Err, War, L, FN);
  
  
  expand([{command,Command} | Rem], Out, SelfRef, Defs, IncFile, IncDir, {endif, Endif, IfLine}, Err, War, L, FN)
    when Command == "ifndef" ->
      {_Removed, Rem2, _Nl} = read_to_nl(Rem),
      IfCou2 = {endif, Endif+1, IfLine},
      expand(Rem2, Out, SelfRef, Defs, IncFile, IncDir, IfCou2, Err, War, L, FN);
  
  
  expand([{command,Command} | Rem], Out, SelfRef, Defs, IncFile, IncDir, {endif, Endif, IfLine}, Err, War, L, FN)
    when Command == "if" ->
      case pp_command(Command, Rem, Defs, IncDir, Err, War, L, FN) of
          {{'if', true}, Rem2, Err2, War2, Nl} ->
              IfCou2 = {endif, Endif+1, IfLine},
              expand(Rem2, Out, SelfRef, Defs, IncFile, IncDir, IfCou2, Err2, War2, L+Nl, FN);
  %%        {{'if', false}, Rem2, Err2, War2, Nl} -> Not implemented yet
          {{'if', error}, Rem2, Err2, War2, Nl} ->
              IfCou2 = {endif, Endif, IfLine},
              expand(Rem2, Out, SelfRef, Defs, IncFile, IncDir, IfCou2, Err2, War2, L+Nl, FN)
      end;
  
  expand([{command,Command} | Rem], Out, SelfRef, Defs, IncFile, IncDir, {endif, Endif, IfLine}, Err, War, L, FN) 
    when Command == "endif" ->
      {_Removed, Rem2, Nl} = read_to_nl(Rem),
      case Endif of
  	1 ->
  	    Out2 = lists:duplicate(Nl,$\n) ++ Out,
              expand(Rem2, Out2, SelfRef, Defs, IncFile, IncDir, check_all, Err, War, L+Nl, FN);
  	_ ->
              IfCou2 = {endif, Endif-1, IfLine},
              expand(Rem2, Out, SelfRef, Defs, IncFile, IncDir, IfCou2, Err, War, L+Nl, FN)
      end;
  
  
  expand([{command,_Command} | Rem], Out, SelfRef, Defs, IncFile, IncDir, {endif, Endif, IfLine}, Err, War, L, FN) ->
      {_Removed, Rem2, _Nl} = read_to_nl(Rem),
      IfCou2 = {endif, Endif, IfLine},
      expand(Rem2, Out, SelfRef, Defs, IncFile, IncDir, IfCou2, Err, War, L, FN);
  
  %% Solves a bug when spaces in front of hashmark !
  expand([space | Rem], Out, SelfRef, Defs, IncFile, IncDir, {endif, Endif, IfLine}, Err, War, L, FN) ->
      expand(Rem, Out, SelfRef, Defs, IncFile, IncDir, {endif, Endif, IfLine}, Err, War, L, FN);
  
  expand([{nl,_Nl} | Rem], Out, SelfRef, Defs, IncFile, IncDir, {endif, Endif, IfLine}, Err, War, L, FN) ->
      expand(Rem, Out, SelfRef, Defs, IncFile, IncDir, {endif, Endif, IfLine}, Err, War, L, FN);
  
  
  expand([_X | Rem], Out, SelfRef, Defs, IncFile, IncDir, {endif, Endif, IfLine}, Err, War, L, FN) ->
      {_Removed, Rem2, Nl} = read_to_nl(Rem),
      Out2 = lists:duplicate(Nl,$\n) ++ Out,
      expand(Rem2, Out2, SelfRef, Defs, IncFile, IncDir, {endif, Endif, IfLine}, Err, War, L, FN);
  
  
  
  
negative.code: 		  D++"/"
  	  end,
  
      case catch file:read_file_info(Dir++FileName) of
  	{ok, _} ->
  	    {ok, Dir++FileName};
  	{error, _} ->
  	    find_inc_file2(FileName, Rem)
      end.
  
  
  %%===============================================================
  