basetypes.f90_tpp: extended Callback_itf by type(c_ptr) argument
cleaned up makefiles a bit
some minor fixes in python binding
forked subproject fortran => libadt
dynamic_string.f90: added operator interfaces
dynamic_string: fixed initialization in cptr, made delete setting len to 0
dynamic_string: added interface cptr
generic_ref: integrated TypeInfo
Makefile: reworked target rules for easy testing
refgen.py: initial version of GenericRef-preprocessor
expanded TypeReference gref by refgen.py
refgen.py:
dynamic_string.f90: made type Attribute private
var_item.f90: rework of var_item - step 1 - still a lot to do
dynamic_string.f90: changed attribute order: setting hardness flag as first member enables to set it without type layout
porting and testing on linux 64bit:
ref_status.fpp / dynamic_string.f90 / var_item.f90:
generic_ref.f90 / refgen.py:
generic_list.f90: added module for porting
abstract_list.f90 / Makefile:
reworked string and buffer assignment to avoid bound exceeds while getting the pointer to zero-length arrays.
refgen.py, dynamic_string.f90, generic_ref.f90:
Makefile: changed preprocessor flag TEST to distinguish between modules
dynamic_string.f90, generic_ref.f90, var_item.f90:
generic_ref.f90:
dynamic_string.f90, generic_ref.f90, var_item.f90:
abstract_list.f90, test_abstract_list.f90:
dynamic_string.f90, test_dynamic_string.f90:
In order to get rid of DynamicString dependency in GenericRef, we need to
base_string.f90, dynamic_string.f90:
renamed definition of type TypeInfo to TypeInfo_t
added missing include file
updated Makefile for building target alist
updated Makefile
base_string.f90, dynamic_string.f90:
fixed name ambiguity that confused gfortran
test_type_references.f90.rg => test_type_references.f90.tpp
type_info.f90:
dynamic_string.f90.tpp:
typegen.py:
generic_ref.f90.tpp:
fixed inportability at checking for line ending
base_types.f90.tpp:
typegen.py, generic_ref.f90.tpp:
moved ref_status.fpp => include/adt/ref_status.fpp
renamed type c_ptr => c_void_ptr, since ifort obviously mixed it up with iso_c_binding's c_ptr and complained about an undefined type ...
updated visual studio project
type_info.f90:
type_info.f90, typegen.py:
extended visual studio project for platform x64
made use of real*16 / complex*32 configurable, by preprocessor flag VARITEM_REAL16
some further work on abstract list
added some iterator handling to abstract_list (not finished yet!)
abstract_list.f90.tpp:
abstract_list.f90.tpp, test_abstract_list.f90
abstract_list.f90.tpp: added range insert via iterators (TODO: check for consistency: end() vs back())
typegen.py, *.tpp:
prepared type_info and typegen.py for supporting object cloning
added some iterator handling to abstract_list (not finished yet!)
type_info.f90:
typegen.py, *.tpp:
generic_ref.f90.tpp, typegen.py:
typegen.py:
typegen.py:
reworked instance initialization
var_item.f90.tpp: allow to put VarItems into abstract lists.
minor changes to make gfortran happy:
first steps for reworking hash_map
extended generic_ref to store refstatus
For some reason, dynamic_string has to be used before using abstract_list to make this example work with ifort version 14.0.1.
some minor fixes:
imported hash code module from fortran project.
hash_map.f90.tpp:
abstract_list.f90.tpp:
abstract_list.f90.tpp:
abstract_list.f90.tpp:
abstract_list.f90.tpp, typegen.py:
typegen.py:
hash_map.f90.tpp:
Makefile: added target for building shared lib
a bit of clean up.
separated hash_code routines
added module crc and split implementation by crc_impl
switched to module crc for calculating hash codes
prefix module names by adt_ to let fortran distinguish modules and interfaces
prefixed / renamed module base_types to adt_basetypes
fixed type of passed value - caused segfault on 64 bit
renamed modules / type definitions acording to new naming conventions (not finished)
compiler issues:
moved generic ref procedures to ref_impl.f90
rework of symbol export macros - not finished!
first steps to move item implementation to separate file item_impl.f90
ref.f90.tpp, ref_impl.f90: added pseudo module to allow private member access
fixed some minor declaration issues to make the linux compilers ifort/gfortran happy
started implementation split for adt_list - still TODO!
made list.f90.tpp, list_impl.f90 compile under gfortran and ifort
updated list exports
basestring.f90, basestring_impl.f90 ref_impl.f90: naming cleanup
fixed use statements to make gfortan happy
memoryref.f90: added module adt_memoryref