Bug 93706 - 3.1: tct 60, 44, 45- Clarification for translation
Summary: 3.1: tct 60, 44, 45- Clarification for translation
Status: CLOSED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.1   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.1 M7   Edit
Assignee: JDT-Core-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-04 15:19 EDT by Cam-Thu Le CLA
Modified: 2005-05-12 23:10 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Cam-Thu Le CLA 2005-05-04 15:19:56 EDT
There are a total of 3 questions which need additional clarification for 
translation:

Question 1: tct 60
File 
\eclipse\plugins\org.eclipse.jdt.core\jdtcore_jar\eclipse\jdt\internal\compiler
\problem\messages.properties 
Can you please explain "boxed" in this context? 
720 = <TWBQ>The expression of type {0} is boxed into {1} 


Question 2: tct44
file name: 
eclipse\plugins\org.eclipse.jdt.core\jdtcore_jar\org\eclipse\jdt\internal\compi
ler\problem\messages.properties 

Pls notice the following sentence: 

527 = Method {0}({2}) has the same erasure {0}({3}) as another method in type 
{1} 

Would you like to explain "erasure"? 


Question 3: tct 45
file name: 
eclipse\plugins\org.eclipse.jdt.core\jdtcore_jar\org\eclipse\jdt\internal\core\
util\messages.properties 

Pls notice the following sentence: 

disassembler.constantpoolheader = Constant pool: 
disassembler.constantpool.class = constant #{0} class: #{1} {2} 
disassembler.constantpool.double = constant #{0} double: {1} 
disassembler.constantpool.float = constant #{0} float: {1} 
disassembler.constantpool.integer = constant #{0} integer: {1} 
disassembler.constantpool.long = constant #{0} long: {1} 
disassembler.constantpool.string = constant #{0} string: #{1} {2} 
disassembler.constantpool.fieldref = constant #{0} field_ref: #{1}.#{2} {3}.
{4} {5} 
disassembler.constantpool.interfacemethodref = constant #{0} 
interface_method_ref: #{1}.#{2} {3}.{4} {5} 
disassembler.constantpool.methodref = constant #{0} method_ref: #{1}.#{2} {3}.
{4} {5} 
disassembler.constantpool.name_and_type = constant #{0} name_and_type: #{1}.#
{2} {3} {4} 
disassembler.constantpool.utf8 = constant #{0} utf8: {1} 

In this sentence, we think this kind of strings such as field_ref, 
interface_method_ref and method_ref should not be translated. And Would you 
like to confirm if we should traslate the word such as: double, float, string 
and so on?
Comment 1 Olivier Thomann CLA 2005-05-11 17:14:09 EDT
For question 3, I would not translate any of the messages.

For question 1, "boxed" means wrap in the corresponding wrapper type.
long -> java.lang.Long,
int -> java.lang.Integer,
etc.

I leave the question 2 to somebody else as I have no idea how that could be
explain in a few words. You can refer to the JLS 3.
http://java.sun.com/docs/books/jls
Comment 2 Philipe Mulet CLA 2005-05-11 17:47:24 EDT
Re: question 2, 
In brief, when dealing with parameterized type (e.g. List<String>), erasure
means erasing (discarding) parameters:  List<String> --> List

So when 2 methods are colliding because having same erasure, it means that there
were two methods which once types got erased, where having same signatures.
e.g.
void foo(List<String> l1) {...}  ---> void foo(List)
void foo(List<Object> l2) {...}  ---> void foo(List)

from JLS 3rd edition

4.6 Type Erasure
Type erasure is a mapping from types (possibly including parameterized types and
type variables) to types (that are never parameterized types or type variables).
We write |T| for the erasure of type T. The erasure mapping is defined as follows.
• The erasure of a parameterized type (§4.5) G<T1, ... ,Tn> is |G|.
• The erasure of a nested type T.C is |T|.C.
• The erasure of an array type T[] is |T|[].
• The erasure of a type variable (§4.4) is the erasure of its leftmost bound.
• The erasure of every other type is the type itself.
The erasure of a method signature s is a signature consisting of the same
name as s, and the erasures of all the formal parameter types given in s.
Comment 3 Cam-Thu Le CLA 2005-05-11 21:57:16 EDT
Thank you for the info. Please close bug or change status so bug can be closed.
Comment 4 Philipe Mulet CLA 2005-05-12 04:27:03 EDT
closing
Comment 5 Olivier Thomann CLA 2005-05-12 12:22:55 EDT
Verified.
Comment 6 Cam-Thu Le CLA 2005-05-12 23:10:33 EDT
Bug closed.