Michaël Van Canneyt 
							
						 
					 
					
						
						
						
						
							
						
						
							e15f731a9b 
							
						 
					 
					
						
						
							
							* Allow to parse internal symbol names generated for generics.  
						
						
						
					 
					
						2024-11-25 21:58:17 +01:00 
						 
				 
			
				
					
						
							
							
								Michaël Van Canneyt 
							
						 
					 
					
						
						
						
						
							
						
						
							e1e301dea8 
							
						 
					 
					
						
						
							
							* Add missing methods to thunk class for parent interfaces without RTTI  
						
						
						
					 
					
						2024-11-25 11:32:36 +01:00 
						 
				 
			
				
					
						
							
							
								Michaël Van Canneyt 
							
						 
					 
					
						
						
						
						
							
						
						
							46e5903792 
							
						 
					 
					
						
						
							
							* Generate correct type name for procedural type arguments in thunk class  
						
						
						
					 
					
						2024-10-15 15:59:09 +02:00 
						 
				 
			
				
					
						
							
							
								Michaël Van Canneyt 
							
						 
					 
					
						
						
						
						
							
						
						
							02704f85a9 
							
						 
					 
					
						
						
							
							* Wasm: generator for invoke helper now handles overloaded methods in interfaces  
						
						
						
					 
					
						2024-05-06 15:49:28 +02:00 
						 
				 
			
				
					
						
							
							
								Michaël Van Canneyt 
							
						 
					 
					
						
						
						
						
							
						
						
							312cf246ad 
							
						 
					 
					
						
						
							
							* Fix creating thunk class when inherited interfaces are used  
						
						
						
					 
					
						2024-05-04 16:44:32 +02:00 
						 
				 
			
				
					
						
							
							
								Michaël Van Canneyt 
							
						 
					 
					
						
						
						
						
							
						
						
							6f7481fd24 
							
						 
					 
					
						
						
							
							* Remove freeold from set_current_scanner  
						
						
						
					 
					
						2024-03-05 07:56:14 +00:00 
						 
				 
			
				
					
						
							
							
								Michaël Van Canneyt 
							
						 
					 
					
						
						
						
						
							
						
						
							4443e83b75 
							
						 
					 
					
						
						
							
							* replace/restore_scanner use var in state to make sure the correct scanner is freed  
						
						
						
					 
					
						2024-03-05 07:56:14 +00:00 
						 
				 
			
				
					
						
							
							
								Michaël Van Canneyt 
							
						 
					 
					
						
						
						
						
							
						
						
							125bd9d5e9 
							
						 
					 
					
						
						
							
							Create invoke helper if requested and reference it in RTTI  
						
						
						
					 
					
						2023-07-13 07:32:21 +00:00 
						 
				 
			
				
					
						
							
							
								Michaël Van Canneyt 
							
						 
					 
					
						
						
						
						
							
						
						
							92f148e667 
							
						 
					 
					
						
						
							
							* Generate hidden class to be used for TVirtualInterface (wasm only)  
						
						
						
					 
					
						2023-07-11 08:36:57 +00:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							553cee72eb 
							
						 
					 
					
						
						
							
							* tsk_wasm_suspending renamed tsk_wasm_suspending_first  
						
						
						
					 
					
						2023-06-17 12:28:12 +03:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							2f1ccd6f2a 
							
						 
					 
					
						
						
							
							+ support 'promising last' exports  
						
						
						
					 
					
						2023-06-16 11:00:19 +03:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							9d893b5d0d 
							
						 
					 
					
						
						
							
							* tcpuprocdef.promising_export_name renamed promising_first_export_name  
						
						
						
					 
					
						2023-06-16 10:50:35 +03:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							9ea1f6de19 
							
						 
					 
					
						
						
							
							+ added 'last' or 'first' to the internal promising wrapper name  
						
						
						
					 
					
						2023-06-13 12:15:46 +03:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							ed748a65b4 
							
						 
					 
					
						
						
							
							+ added last:boolean parameter to implement_wasm_promising_wrapper  
						
						
						
					 
					
						2023-06-13 12:14:09 +03:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							2eb3f5f0b8 
							
						 
					 
					
						
						
							
							+ introduced implement_wasm_promising_wrapper  
						
						
						
					 
					
						2023-06-13 12:10:54 +03:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							0f89852908 
							
						 
					 
					
						
						
							
							+ support 'suspending last' externals as well  
						
						
						
					 
					
						2023-06-13 09:34:54 +03:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							c22b6c10b7 
							
						 
					 
					
						
						
							
							* fixed generating wrappers for suspending functions that return something, other than double  
						
						
						
					 
					
						2023-06-11 16:50:49 +03:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							15c95e0ac7 
							
						 
					 
					
						
						
							
							+ initial implementation of WebAssembly promising exports  
						
						
						
					 
					
						2023-06-11 16:43:45 +03:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							80c8575636 
							
						 
					 
					
						
						
							
							* fixed creating suspended wrappers for functions without parameters  
						
						
						
					 
					
						2023-06-11 15:24:55 +03:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							1a4b97a62a 
							
						 
					 
					
						
						
							
							* fixed compilation with -Sew  
						
						
						
					 
					
						2023-06-11 15:09:49 +03:00 
						 
				 
			
				
					
						
							
							
								Nikolay Nikolov 
							
						 
					 
					
						
						
						
						
							
						
						
							b247302871 
							
						 
					 
					
						
						
							
							+ initial attempt (not fully working, yet) at implementing WebAssembly suspending externals  
						
						
						
					 
					
						2023-06-11 14:07:35 +03:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							32f8dc7ef5 
							
						 
					 
					
						
						
							
							symcreat: add hidden high parameters in create_procdef_alias  
						
						... 
						
						
						
						No longer happens automatically for pc_bareproc procdef copies 
						
					 
					
						2022-12-31 11:59:05 +01:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							b0e1867b4c 
							
						 
					 
					
						
						
							
							symcreat: support for scanner/parser escape sequences  
						
						... 
						
						
						
						Support escape sequences when parsing internally generated code. Used for now
to force interpreting certain identifiers as unit/namespace identifiers. 
						
					 
					
						2022-09-16 11:21:05 +02:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							76e3cfc38f 
							
						 
					 
					
						
						
							
							parentfpstruct: don't add vo_is_firstfield to first field of record  
						
						... 
						
						
						
						That flag is only for the first field of variant parts of records 
						
					 
					
						2022-06-06 23:12:53 +02:00 
						 
				 
			
				
					
						
							
							
								Sven/Sarah Barth 
							
						 
					 
					
						
						
						
						
							
						
						
							7f3a5eb9ab 
							
						 
					 
					
						
						
							
							* extend tabstractprocdef.getcopyas by a parameter to control whether the copy should be registered or not  
						
						
						
					 
					
						2022-05-26 21:42:59 +02:00 
						 
				 
			
				
					
						
							
							
								Sven/Sarah Barth 
							
						 
					 
					
						
						
						
						
							
						
						
							f6a444c6fc 
							
						 
					 
					
						
						
							
							* combine the Boolean parameters of read_proc and read_proc_dec into a set  
						
						
						
					 
					
						2022-05-26 21:42:53 +02:00 
						 
				 
			
				
					
						
							
							
								Pierre Muller 
							
						 
					 
					
						
						
						
						
							
						
						
							5acd7a7b83 
							
						 
					 
					
						
						
							
							Rename tsymtable.insert and delete methods to insertsym ands deletesym  
						
						
						
					 
					
						2022-05-03 23:00:28 +02:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							5e3e4437c4 
							
						 
					 
					
						
						
							
							* use new TSym.EscapedRealName property when creating new symbols with the  
						
						... 
						
						
						
						same name as existing symbols
git-svn-id: trunk@47856 - 
						
					 
					
						2020-12-27 13:18:53 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							637976e83f 
							
						 
					 
					
						
						
							
							* patch by Marģers to unify internal error numbers,  resolves   #37888  
						
						... 
						
						
						
						git-svn-id: trunk@47103 - 
						
					 
					
						2020-10-13 19:59:01 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							a2174753c1 
							
						 
					 
					
						
						
							
							- removed tabstractrecorddef.get_unit_symtable, which did not always return the unit  
						
						... 
						
						
						
						symtable (when you had a local recorddef in a procdef)
  * modified tdef.get_top_level_symtable() so you can specify whether you want to
    skip procdefs or not
  * changed tobjectdef.vmt_def() to no longer require a typesym for the tobjectdef
    (based on patch by Blaise)
git-svn-id: trunk@45361 - 
						
					 
					
						2020-05-13 21:46:29 +00:00 
						 
				 
			
				
					
						
							
							
								svenbarth 
							
						 
					 
					
						
						
						
						
							
						
						
							a041f899d3 
							
						 
					 
					
						
						
							
							* when creating the static field of a generic, insert it into the generic instead of the global symtable as it isn't really used anyway  
						
						... 
						
						
						
						git-svn-id: trunk@43542 - 
						
					 
					
						2019-11-21 21:44:43 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							a051b8d225 
							
						 
					 
					
						
						
							
							- remmoved doregister parameter from t*sym constructors, as the registration  
						
						... 
						
						
						
						is handled automatically nowadays
git-svn-id: trunk@42998 - 
						
					 
					
						2019-09-14 17:30:45 +00:00 
						 
				 
			
				
					
						
							
							
								svenbarth 
							
						 
					 
					
						
						
						
						
							
						
						
							6952ab5baf 
							
						 
					 
					
						
						
							
							* fix for Mantis  #35918 : don't set the mangledname for the attribute's constructor function; let the compiler do its job instead  
						
						... 
						
						
						
						git-svn-id: trunk@42560 - 
						
					 
					
						2019-08-02 14:07:17 +00:00 
						 
				 
			
				
					
						
							
							
								svenbarth 
							
						 
					 
					
						
						
						
						
							
						
						
							a64a8f8deb 
							
						 
					 
					
						
						
							
							- remove code to create an attribute using a synthetic function  
						
						... 
						
						
						
						git-svn-id: trunk@42396 - 
						
					 
					
						2019-07-12 22:07:28 +00:00 
						 
				 
			
				
					
						
							
							
								svenbarth 
							
						 
					 
					
						
						
						
						
							
						
						
							ced3885dbb 
							
						 
					 
					
						
						
							
							* generate construction function for the attributes used in a unit using a more straight forward approach  
						
						... 
						
						
						
						ToDo: "collect" attributes of same type and same argument list and generate constructor only once for them
git-svn-id: trunk@42394 - 
						
					 
					
						2019-07-12 22:07:20 +00:00 
						 
				 
			
				
					
						
							
							
								svenbarth 
							
						 
					 
					
						
						
						
						
							
						
						
							f9cda608fa 
							
						 
					 
					
						
						
							
							* take a copy of the constructor assignment node (and free it together with the attribute)  
						
						... 
						
						
						
						git-svn-id: trunk@42388 - 
						
					 
					
						2019-07-12 22:06:57 +00:00 
						 
				 
			
				
					
						
							
							
								svenbarth 
							
						 
					 
					
						
						
						
						
							
						
						
							b2932393df 
							
						 
					 
					
						
						
							
							Reintegration of Custom Attributes branch by Joost van der Sluis with patches reworked by Svetozar Belic [patch 1/3]  
						
						... 
						
						
						
						Implemented attributes for class types and properties (based on work by Joost van der Sluis). Added TCustomAttribute - a base class for attributes. Added TUnitInfo record to RTTI. It contains the unit name and unit options (for now only a flag which specifies if the unit contains attributes). Added several tests for attributes.
git-svn-id: trunk@42356 - 
						
					 
					
						2019-07-12 22:04:48 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							281b3ad276 
							
						 
					 
					
						
						
							
							* fix case completeness and unreachable code warnings in compiler that would  
						
						... 
						
						
						
						be introduced by the next commit
git-svn-id: trunk@42046 - 
						
					 
					
						2019-05-12 14:29:03 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							ed2ae508d0 
							
						 
					 
					
						
						
							
							* only add hidden parameters for objectdef methods after generating the vmt,  
						
						... 
						
						
						
						so that they take into account inherited calling conventions (mantis #35233 )
   o don't needlessly calculate the paraloc info when generating a JVM mangled
     name
git-svn-id: trunk@41716 - 
						
					 
					
						2019-03-16 19:14:14 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							91d5457b38 
							
						 
					 
					
						
						
							
							* moved around/replaced the following procedures to stop nflw from depending  
						
						... 
						
						
						
						on pdecsub (node units should not depend on parser units):
   o maybe_add_public_default_java_constructor()
   o handle_calling_convention()
   o create_finalizer_procdef() (replaced with create_outline_procdef())
   o insert_record_hidden_paras()
   o handle_calling_convention()
   o proc_add_definition()
   o build_parentfpstruct()
   o maybe_guarantee_record_typesym()
   o get_first_proc_str()
  * factored out the creation of a procinfo for a nested procdef based on a
    subnodetree of the current procdef into tprocinfo.create_for_outlining()
git-svn-id: trunk@40773 - 
						
					 
					
						2019-01-05 16:26:33 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							4d03f3a65e 
							
						 
					 
					
						
						
							
							* fixed LLVM memory leaks  
						
						... 
						
						
						
						git-svn-id: trunk@40732 - 
						
					 
					
						2019-01-01 16:22:31 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							d75ba7cb11 
							
						 
					 
					
						
						
							
							* suppress notes about unused $nestedvars local variable  
						
						... 
						
						
						
						git-svn-id: trunk@40648 - 
						
					 
					
						2018-12-25 18:22:41 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							acf02ab64b 
							
						 
					 
					
						
						
							
							* when creating wrappers, add a prefix to parameter names to prevent them  
						
						... 
						
						
						
						hiding the method name of the wrapped routine
   o also add a few more '&' prefixes to the generated wrapper code to
     prevent issues when keywords are used as identifiers
git-svn-id: trunk@40634 - 
						
					 
					
						2018-12-24 22:10:06 +00:00 
						 
				 
			
				
					
						
							
							
								nickysn 
							
						 
					 
					
						
						
						
						
							
						
						
							3318703ece 
							
						 
					 
					
						
						
							
							* moved nf_typedaddr to addrnodeflags (anf_typedaddr)  
						
						... 
						
						
						
						git-svn-id: trunk@38671 - 
						
					 
					
						2018-04-03 16:41:01 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							d35377fdee 
							
						 
					 
					
						
						
							
							* workaround for debug info for interface method wrappers: give them the  
						
						... 
						
						
						
						line number information of the method declaration if it's in the current
    unit, and otherwise the first line of the current unit (mantis #14399 )
git-svn-id: trunk@37961 - 
						
					 
					
						2018-01-13 16:54:22 +00:00 
						 
				 
			
				
					
						
							
							
								florian 
							
						 
					 
					
						
						
						
						
							
						
						
							b1dff29cbf 
							
						 
					 
					
						
						
							
							* removed unused units  
						
						... 
						
						
						
						git-svn-id: trunk@36165 - 
						
					 
					
						2017-05-09 19:53:14 +00:00 
						 
				 
			
				
					
						
							
							
								svenbarth 
							
						 
					 
					
						
						
						
						
							
						
						
							1a6a8b7c9f 
							
						 
					 
					
						
						
							
							+ introduce a new potype for the main stub of a package library (which on Windows is simply a DLLMain returning True)  
						
						... 
						
						
						
						git-svn-id: trunk@35371 - 
						
					 
					
						2017-01-29 22:37:40 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							d36fe53d85 
							
						 
					 
					
						
						
							
							* factored out the code to create an complete alias for a procdef to  
						
						... 
						
						
						
						symcreat.create_procdef_alias()
git-svn-id: trunk@35087 - 
						
					 
					
						2016-12-09 13:39:35 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							8af85a16b3 
							
						 
					 
					
						
						
							
							* document finish_copied_procdef()  
						
						... 
						
						
						
						git-svn-id: trunk@35086 - 
						
					 
					
						2016-12-09 13:39:31 +00:00 
						 
				 
			
				
					
						
							
							
								Jonas Maebe 
							
						 
					 
					
						
						
						
						
							
						
						
							81b9928e31 
							
						 
					 
					
						
						
							
							* simply disable warnings rather than initialise the function result in  
						
						... 
						
						
						
						abstract method wrappers using default(resulttype), because "resulttype"
    may not be visible in the current unit. Fixes win32 build after r34127
git-svn-id: trunk@34137 - 
						
					 
					
						2016-07-15 14:35:52 +00:00