Udon VM 向けのコンパイラを作ろうとしている[2]
- 即値があれば何でもできる回
- EXTERN 関数の一覧を列挙したところ命名規則と矛盾した名前のものが1069個も見つかった回
の二本立てです
𝚌𝚊𝚗𝚗𝚘𝚛𝚒𝚗
@cannorin3
即値がないので Int32.MaxValue / Int32.MaxValue から 1 を作って 0 から足し引きしまくって欲しい整数を得るなどの異常な発想がある
2019-12-21 20:29:50
𝚌𝚊𝚗𝚗𝚘𝚛𝚒𝚗
@cannorin3
JavaScript 記号プログラミングと同じようなアレがある あれも +[] から 0 を作って足しまくって任意の数値にしたり、[][[]] から undefined を作って文字 f,i,n,d を得て Array.prototype.find を呼ぶなどの異常な技が連発される
2019-12-21 20:34:08
𝚌𝚊𝚗𝚗𝚘𝚛𝚒𝚗
@cannorin3
@Ram_Type64_Mod0 それはそうなんだけどバイトコードからは直接触れないのよね…… 定数宣言すらできない状況
2019-12-21 20:34:37
madorama@VRChat
@madorama_vrc
UAssembly、`PUSH 0`はできないけど`PUSH "Hello, world!"`はできるの笑う。
2019-12-21 20:37:04
榊そら
@sora_sakaki_vrc
@cannorin_vrc そのイメージだった。つまりVRCでなにができるのか知りたい? (もちろん計算とかVRCの機能以外のも知りたいけど
2019-12-21 20:43:08
madorama@VRChat
@madorama_vrc
@cannorin_vrc これでエラー出ないしログがこの通りだったのでString…のはず pic.twitter.com/stZ15zYC8L
2019-12-21 20:46:23
拡大
拡大
Ram.Type-0@VRC
@RamType0
@cannorin_vrc なんかどうやってるのか見てきたけどUdonGraph ProgramAssetがoverrideされたメソッド内でheapに直接初期値代入してる UdonGraph ProgramAsset以外は初期値を扱えないみたい……? あとなんかここの初期値代入周りは脆弱性ありそうですね……
2019-12-21 20:57:32