@@ -890,8 +890,15 @@ build_dot_container(Dot, Left, Right, Extra) ->
890890
891891build_dot (Dot , Left , {_ , Location , _ } =  Right ) -> 
892892  Meta  =  meta_from_token (Dot ),
893-   IdentifierLocation  =  meta_from_location (Location ),
894-   {'.' , Meta , IdentifierLocation , [Left , extract_identifier (Right )]}.
893+   IdentifierMeta0  =  meta_from_location (Location ),
894+   IdentifierMeta1  = 
895+     case  Dot  of 
896+       {'.' , {_Line , _Column , Delimiter }} when  Delimiter  =/=  nil  ->
897+         delimiter (<<Delimiter >>) ++  IdentifierMeta0 ;
898+       _  ->
899+         IdentifierMeta0 
900+     end ,
901+   {'.' , Meta , IdentifierMeta1 , [Left , extract_identifier (Right )]}.
895902
896903extract_identifier ({Kind , _ , Identifier }) when 
897904    Kind  ==  identifier ; Kind  ==  bracket_identifier ; Kind  ==  paren_identifier ;
@@ -916,17 +923,17 @@ build_no_parens_do_block(Expr, Args, {BlockMeta, Block}) ->
916923build_no_parens (Expr , Args ) -> 
917924  build_call (Expr , Args ).
918925
919- build_identifier ({'.' , Meta , IdentifierLocation , DotArgs }) -> 
920-   {{'.' , Meta , DotArgs }, [{no_parens , true } | IdentifierLocation ], []};
926+ build_identifier ({'.' , Meta , IdentifierMeta , DotArgs }) -> 
927+   {{'.' , Meta , DotArgs }, [{no_parens , true } | IdentifierMeta ], []};
921928
922929build_identifier ({'.' , Meta , _ } =  Dot ) -> 
923930  {Dot , [{no_parens , true } | Meta ], []};
924931
925932build_identifier ({_ , Location , Identifier }) -> 
926933  {Identifier , meta_from_location (Location ), nil }.
927934
928- build_call ({'.' , Meta , IdentifierLocation , DotArgs }, Args ) -> 
929-   {{'.' , Meta , DotArgs }, IdentifierLocation , Args };
935+ build_call ({'.' , Meta , IdentifierMeta , DotArgs }, Args ) -> 
936+   {{'.' , Meta , DotArgs }, IdentifierMeta , Args };
930937
931938build_call ({'.' , Meta , _ } =  Dot , Args ) -> 
932939  {Dot , Meta , Args };
0 commit comments