wrt. auto-deref when Copy, wouldn't that mean code might stop working when one adds Copy to a type?
ubsan
phaylon: it would only mean that code starts compiling that didn't already
afaict
phaylon
even when the type of `foo.bar` would change from &X to X?
ubsan
phaylon: I mean, I imagine that it would only autoderef if necessary
phaylon
e.g. foo<T:RefOrOwned>(_: T) {} foo(bar.baz) and flip copy-ness of .baz
as in "if it doesn't work, try compiling the other way"?
woboats
phaylon, it woudln't *change* from &X to X, it would be &X unless you tried to unify it with X
so if the code compiled with the value as &X nothing would change
so yes, what ubsan said
phaylon
ah
would the visible semantics for non-copy types be similar like the pass-owned-to-ref proposal, as in it auto-refs but consumes the field/object?
kimundi has quit
woboats
phaylon, I don't know what you mean
kimundi joined the channel
phaylon
there's a proposal floating around allowing `fn foo(t: &T) {} foo(owned_t)` that's basically `{ foo(&owned_t) }`, so it auto-refs, but acts like it was moved
so I was wondering if `foo(something.owned_t)` would follow those semantics
just thinking out loud at this point, I'm more of a be-explicit kinda guy
woboats
phaylon, i think there's not a connection.
this is about where `something` is `&T`, you get a reference from `something.owned_t`
you're talking about if `something` is `T` but the foo takes a reference
phaylon
ah, true
woboats
so yea it would work the same way for `t` or `x.t` but that's just because they're both expressions that evaluate to `T`
also I am so close to that sweet nagbot 0
phaylon
I'm not understanding that last line :) I assume I'm missing context
warmwaffles has quit
woboats
phaylon, there's a bot that emails team members about RFCs and issues they need to comment on, my daily email only had 1 item today
phaylon
aah, there's the context
for a moment I thought I was the nagbot. I'm sometimes worries that I'm criticising too much
jseyfried has quit
brson has quit
woboats
phaylon, not at all :)
alunux has quit
Jesin has quit
kimundi has quit
kimundi joined the channel
Jesin joined the channel
brson joined the channel
russ_za has quit
russ_za joined the channel
Ink_heart joined the channel
Ink_heart has quit
russ_za has quit
russ_za joined the channel
WindowsBunny joined the channel
jseyfried joined the channel
WindowsBunny1 joined the channel
WindowsBunny has quit
WindowsBunny1 is now known as
brson has quit
AstralSorcerer joined the channel
srwalker101 joined the channel
srwalker101 has quit
srwalker101 joined the channel
Ink_heart joined the channel
Ink_heart has quit
https://is.gd/LHX7ed The new frontiers of typenum, it'll be fairly trivial to implement `where {x < y}` type of clauses with const generics
eddyb, did you know this?
eddyb
lol
woboats
people will definitely do this
eddyb
woboats: this is Refl isn't it
woboats
I'm not sure.. they at least have to be compile time values still
eddyb
like you can just do where (): IsTrue<{f(X)}>
woboats
yes exactly
gee
so you dont even need custom traits
eddyb
or bool: Is<{f(X)}, true> if we allowed const LHS: Self