Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: overhaul file name info #15583

Closed
wants to merge 1 commit into from
Closed

WIP: overhaul file name info #15583

wants to merge 1 commit into from

Conversation

JeffBezanson
Copy link
Member

@JeffBezanson JeffBezanson commented Mar 22, 2016

This is a replacement for #15000. Designed to go with #14949.

This change removes file names from line nodes, instead changing the current file name as necessary with meta push_loc and pop_loc nodes (exact names TBD).

File names are still present in line nodes in surface ASTs, so macros should be unaffected.

Todo:

  • Figure out how to get file names for out-of-scope method adds
  • Decide on name of push_loc
  • Use these meta nodes in codegen (might be easier after Improve inlined line numbers #14949 is merged)
  • Fix show test

- add location info to empty blocks; fixes #15280
- remove file names from non-initial `line` nodes
- emit `(meta push_loc filename)` and `(meta pop_loc)` around nested
  blocks from different files, to handle macros
- fix line number of `catch` blocks
@vtjnash
Copy link
Member

vtjnash commented May 3, 2016

what's blocking this?

@JeffBezanson
Copy link
Member Author

The two unchecked items above. #14949 has some needed changes in how we represent location info in LLVM. Without something similar to those changes it's not as easy to use filename push and pop.

@JeffBezanson
Copy link
Member Author

Now part of #16335

@tkelman tkelman deleted the jb/filenames2 branch May 15, 2016 03:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants