We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
The case:
Package A: define library X define library Y, exports X
Package B: define library Z, exports A.Y
Package C: Import library B.Z Try the following:
import 'dart:mirrors'; import 'package:B/Z.dart';
void main() { ClassMirror typeMirror = reflectType(Bar); var decs = typeMirror.declarations; }
class Bar { int a; }
Results in a crash, but only in Dart2JS + Checked Mode
The text was updated successfully, but these errors were encountered:
I have a test that reproduces this issue, but it's far from minimal
https://codereview.chromium.org/312713003/
It does not seem relate to exports as I originally guessed
Changed the title to: "Dart2Js Mirrors throws exception when unrelated library is imported".
Sorry, something went wrong.
Here is an even smaller example:
import 'dart:mirrors';
class A { const A(); }
@deprecated const A anA = const A();
main() { ClassMirror typeMirror = reflectType(A); var decs = typeMirror.declarations; print(decs.length); }
The issue is that the mirrors implementation cannot handle metadata in library descriptors. Unfortunately, I have no time left to fix this right now.
Added C1 label.
See https://codereview.chromium.org/328803002/ for a proposed fix.
Set owner to @herhut-ggl. Added Started label.
Fixed as of revision r37256.
Added Fixed label.
No branches or pull requests
The case:
Package A:
define library X
define library Y, exports X
Package B:
define library Z, exports A.Y
Package C:
Import library B.Z
Try the following:
import 'dart:mirrors';
import 'package:B/Z.dart';
void main() {
ClassMirror typeMirror = reflectType(Bar);
var decs = typeMirror.declarations;
}
class Bar {
int a;
}
Results in a crash, but only in Dart2JS + Checked Mode
The text was updated successfully, but these errors were encountered: