Difference between revisions of "User:Marc"
From Free Pascal wiki
Jump to navigationJump to searchLine 37: | Line 37: | ||
== DWARF compiler improvements == | == DWARF compiler improvements == | ||
+ | ===classes/interfaces=== | ||
;DW_AT_artificial: flag for Self and Result | ;DW_AT_artificial: flag for Self and Result | ||
+ | ;DW_TAG_class_type: use this one instead of DW_TAG_structure_type for classes | ||
+ | |||
+ | ;DW_TAG_inheritance: reference to the ancestor class. Its not clear if this tag is only used for the definiition of the derived class, or for the description of each inherited class member | ||
+ | |||
+ | |||
+ | ;DW_TAG_subprogram: for class (interface?) members. It seems not to be generated. | ||
+ | :;DW_AT_vtable_elem_location: for virtual class members | ||
+ | :;DW_AT_object_pointer: a reference to Self | ||
+ | :what to do with class methods ? | ||
+ | |||
+ | ====properties==== | ||
+ | ;DW_TAG_access_declaration: not sure, but I think this one can be used when the scope of a properety is increased | ||
+ | |||
+ | ;DW_TAG_variant_part: unions. cant we do a property with this, a read and a write variant ? | ||
+ | ;location expressions: is it possible to describe properties this way ? i.e. present is as data member ? What to do with read and write ? | ||
+ | |||
+ | |||
+ | ===misc=== | ||
;DW_AT_decl_file, DW_AT_decl_line, DW_AT_decl_column: source code locations for types (lineinfo is only for code) | ;DW_AT_decl_file, DW_AT_decl_line, DW_AT_decl_column: source code locations for types (lineinfo is only for code) | ||
Line 47: | Line 66: | ||
;DW_TAG_try_block, DW_TAG_catch_block: defines the address range of a try block / exceptopnhandler block | ;DW_TAG_try_block, DW_TAG_catch_block: defines the address range of a try block / exceptopnhandler block | ||
− | ; | + | ;DW_TAG_subroutine_type: -> procedural type |
− | + | ||
− | ; | + | ;DW_TAG_string_type: use this instead of pointer to char |
− | |||
− | |||
− | ; | + | ;DW_TAG_file_type: for file types (is it already generated ?) |
− | |||
− | |||
− | |||
− | ; | + | ;DW_AT_data_location: can this be used for strings/dynarrs/properties ? |
Revision as of 01:23, 14 September 2006
My Todo
LCL
- Make imagelist widgetset specific
- adjust Listviews for imagelists
- update toolbar
- update treeview
Carbon interface
- make initial interface so that a hello world would work
- Make a Ansistring based CFString (CFStringCreateWithCStringNoCopy, add refcount and release with contentsDeallocator)
Debugger
- Fix bugs
- Make native win32/64 debugger (in progress)
- Document
Linux 64
- Make it work™
Sparc
- Fix gtk scrollbars
Installing Carbon on OSX
DWARF compiler improvements
classes/interfaces
- DW_AT_artificial
- flag for Self and Result
- DW_TAG_class_type
- use this one instead of DW_TAG_structure_type for classes
- DW_TAG_inheritance
- reference to the ancestor class. Its not clear if this tag is only used for the definiition of the derived class, or for the description of each inherited class member
- DW_TAG_subprogram
- for class (interface?) members. It seems not to be generated.
- DW_AT_vtable_elem_location
- for virtual class members
- DW_AT_object_pointer
- a reference to Self
- what to do with class methods ?
properties
- DW_TAG_access_declaration
- not sure, but I think this one can be used when the scope of a properety is increased
- DW_TAG_variant_part
- unions. cant we do a property with this, a read and a write variant ?
- location expressions
- is it possible to describe properties this way ? i.e. present is as data member ? What to do with read and write ?
misc
- DW_AT_decl_file, DW_AT_decl_line, DW_AT_decl_column
- source code locations for types (lineinfo is only for code)
- DW_AT_calling_convention
- might be usefull, however the given conventions are limited, maybe add more ?
- DW_TAG_with_stmt
- defines the address range of a with block. Also the type of the with var
- DW_TAG_try_block, DW_TAG_catch_block
- defines the address range of a try block / exceptopnhandler block
- DW_TAG_subroutine_type
- -> procedural type
- DW_TAG_string_type
- use this instead of pointer to char
- DW_TAG_file_type
- for file types (is it already generated ?)
- DW_AT_data_location
- can this be used for strings/dynarrs/properties ?