-
-
Notifications
You must be signed in to change notification settings - Fork 23
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
setting mro 'c3' doesn't work for utf8 packages. #285
Comments
So I suspected the issue was related to this line of code found in 3 places: $init->add_eval('mro::set_mro($package, "c3");'); My suspicion was that the eval wasn't working right for UTF8 strings in 5.22 So I patched B::C to use the MRO XS code instead. NOTE: this has to be done in init2 since mro has to bootstrap c3 in its XS init before you can set mro to c3. I also determined that in the above code, the Diᚪၚd_D package stash was never getting saved I suspect this might be distracting you in #219 and can be resolved if you find a way to assure the package is marked used. I noticed this code which seems to mark a package used but prevent it from saving its stash? unless ( $B::C::dumped_package{$package} ) {
$B::C::dumped_package{$package} = 1;
mark_package( $package, 1 );
}
|
Applying my patch gets these tests working: mro/basic_01_c3_utf8.t TESTS some tests are now failing The only thing that's suspicious is that op/write.t starts segfaulting instead of having a PLAN failure but I'm inclined to treat that as jitter for the moment. |
The code and idea looks good. |
GH rurban#285 Use the perl command in init2 after mro bootstraps.
GH rurban#285 Use the perl command in init2 after mro bootstraps.
GH rurban#285 Use the perl command in init2 after mro bootstraps.
GH rurban#285 Use the perl command in init2 after mro bootstraps. (cherry picked from commit 5bcb0ce) Signed-off-by: Todd Rinaldo <[email protected]> Some extra xtestc breaks are listed but probably unrelated.
PR #286 resolved this when it was merged to master. |
GH rurban#285 Use the perl command in init2 after mro bootstraps. (cherry picked from commit 5bcb0ce) Signed-off-by: Todd Rinaldo <[email protected]> Some extra xtestc breaks are listed but probably unrelated.
Program:
perlcc -r test.pl returns nothing.
The text was updated successfully, but these errors were encountered: