# HG changeset patch # User kmo # Date 1359021818 28800 # Node ID 22ead76da3f470a4a6a0b8bd82488c731b0e630c # Parent 522c328b8b7777c99bb34684b4dca69f959f6c45 8006758: LinkResolver assertion (caused by @Contended changes) Summary: treat anonymous classes as privileged code to restore the special handling for @Compiled during class file parsing Reviewed-by: jrose, coleenp, kvn, dholmes diff -r 522c328b8b77 -r 22ead76da3f4 src/share/vm/classfile/classFileParser.cpp --- a/src/share/vm/classfile/classFileParser.cpp Wed Jan 23 15:11:03 2013 -0800 +++ b/src/share/vm/classfile/classFileParser.cpp Thu Jan 24 02:03:38 2013 -0800 @@ -1802,11 +1802,9 @@ ClassFileParser::AnnotationCollector::annotation_index(ClassLoaderData* loader_data, Symbol* name) { vmSymbols::SID sid = vmSymbols::find_sid(name); - bool privileged = false; - if (loader_data->is_the_null_class_loader_data()) { - // Privileged code can use all annotations. Other code silently drops some. - privileged = true; - } + // Privileged code can use all annotations. Other code silently drops some. + bool privileged = loader_data->is_the_null_class_loader_data() || + loader_data->is_anonymous(); switch (sid) { case vmSymbols::VM_SYMBOL_ENUM_NAME(java_lang_invoke_ForceInline_signature): if (_location != _in_method) break; // only allow for methods