> On Mar 14, 2016, at 1:49 PM, Erica Sadun <[email protected]> wrote:
>
>
>> On Mar 14, 2016, at 2:37 PM, Chris Lattner <[email protected]
>> <mailto:[email protected]>> wrote:
>> If it is practical to get the module-relative path, I’d rather see us switch
>> #file to produce *that*, and introduce a #fullPath that produces the current
>> behavior. Rationale: we want to encourage deterministic and stable builds
>> wherever possible, and including the full path to a source file breaks the
>> ability to build in different directories (e.g. two different users’s
>> homedirs) and get the same executable out.
>
> I'd like to know one way or another. My current understanding is that this is
> not produced as part of the build.
>
> And, quite honestly, I'd sort of like to see better names. I stuck with file,
> line, column, and function because those were the current art.
> Now that the identifiers are growing, relativeFilePath, fullFilePath,
> fileName, lineNumber (or fileLineNumber), fileColumn, and functionSignature
> (that's somehow compliant with the updated signatures proposal) seem more
> appropriate. The old "function" string just feels archaic and wrong.
In this case, I don’t think that more is better. Having too many options and
knobs is not good for anyone. Having #file produce the module-relative path
(including the module name) serves all of the use-cases that I’m aware of,
since you can further slice and dice it to get the base file name out.
What other use cases exist, and how important are they?
-Chris
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution