Ticket #978 (closed defect: fixed)

Opened 5 years ago

Last modified 4 years ago

native-translated-namestring merges with *default-pathname-defaults*

Reported by: fare Owned by:
Priority: normal Milestone:
Component: Runtime (threads, GC) Version: 1.8
Keywords: ITA Cc:


The manual doesn't say it does, but native-translated-namestring merges its argument with *default-pathname-defaults*, which does nothing when the default value of #p"" is used, but can yield interesting results in other cases. This behavior is not mentioned in the manual:  http://ccl.clozure.com/manual/chapter4.6.html

Personally, I'd consider that a bug, for merging is not what I'd expect from this function. However, maybe you have a different idea and this behavior is what you desire - in which case I consider that a bug in the documentation, for that is very surprising (to me at least).

My workaround is to bind *default-pathname-defaults* to #p"" around my call to native-translated-namestring.

Change History

comment:1 Changed 5 years ago by gz

  • Keywords ITA added

comment:2 Changed 4 years ago by fare

This may or may not be affected by the [15330] fix to related ticket:953

comment:3 Changed 4 years ago by gz

  • Status changed from new to closed
  • Resolution set to fixed

(In [15744]) Don't merge with *default-pathname-defaults* in native-translated-namestring.

comment:4 Changed 4 years ago by gb

I don't think that the old behavior was desirable, but it's been present in MCL and CCL for a long time and I wouldn't be surprised if there was code out there that implicitly or explicitly depends on that old behavior. (If there is, that doesn't necessarily argue against the change but it may argue in favor of publicizing the change a bit more.)

Note: See TracTickets for help on using tickets.