It compiles because Gimp plug-ins (unlike PhotoShop plug-ins) are separate executables, which communicate with the main Gimp app via a shared memory channel. As separate executables, they are compiled separately and don't necessarily need to avoid function namespace conflicts with the main app. (Although in my opinion it would be better design to avoid such conflicts.) The libgimp function gimp_image_get_parasite_list is actually just the C hook for the function image_get_parasite_list_invoker, whose autogenerated source code you can find in app/pdb/image_cmds.c. The PDB actually consists of a large set of "invoker" functions of that sort -- libgimp is simply the C language binding that C plug-ins use to access the PDB. Other languages such as Python and Ruby have their own bindings -- the function of a binding is to transform a native language command into a call to one of the invoker functions that belong to the PDB. (Libgimp also contains some utility functions that are useful for C plug-ins but don't involve the PDB, but that doesn't affect the main point.) -- Bill _______________________________________________ Gimp-developer mailing list Gimp-developer@xxxxxxxxxxxxxxxxxxxxxx https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer