<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://jogamp.org/bugzilla/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.2"
          urlbase="https://jogamp.org/bugzilla/"
          
          maintainer="sgothel@jausoft.com"
>

    <bug>
          <bug_id>1134</bug_id>
          
          <creation_ts>2015-02-26 02:49:15 +0100</creation_ts>
          <short_desc>Enhance GlueGen Compiler: Minimal GL Header Changes _and_ Typesafety</short_desc>
          <delta_ts>2019-03-29 17:54:47 +0100</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>3</classification_id>
          <classification>JogAmp</classification>
          <product>Gluegen</product>
          <component>core</component>
          <version>2.3.0</version>
          <rep_platform>All</rep_platform>
          <op_sys>all</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>---</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>1135</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Sven Gothel">sgothel</reporter>
          <assigned_to name="Sven Gothel">sgothel</assigned_to>
          
          
          <cf_type>---</cf_type>
          <cf_scm_refs>72d3635279ffc8ad88e47dff9bbe95d211226d11
ea6df88075c44f6b6317920119d6b33d5d97b362
8eb9e27bccca4a0cd6a0b1b15bee76576ce030c3
54dcf4271abf188585b248473cab11b0b4d93854
4183867b055e99762d9b1a9163012657738be31a
1df503b8f14b385b35c6b50a4ff7ff03d1c3134f
5f66fafec303de7d7904a499fefb8e3d023b61ae
43f200428eb595665d6db6edbd5538413f5a977c
6a0822b03de2976c5bc37544c50e70094eeb94a7
eca019cdea4017227e951d8a9eb30cb34fca4a07
b86c042c864db0d8061b999fadc87dd9f3b45824
d75bd393a5850252d7d7012e68af3850178ca8c9
e2d5d6f55794c5e27c3a29dcbbdaf2921506667d
da909f84dc8421052c92491baa7dd90e1c78dc8f
457355003bff320eee831731de016d29fb1e3982
3b7871515f9a6a3c7adcbf12772d168e61f86d50
cf9f28cf249393f42d7d2835775521dfadee6b92
9eb9403d774db0c55ea3cb2fc5bd04114b8b5feb
414a0146660cadd35d5ae270f7f819717e9c7374
10060b091b76bee35246c5165d49ab546ebc4e37
90e53d0c01f2fe62ff8c5bcc41741ec3c9c47e59
8efdf71e2de6392344326ba6a28e8f8fa7e3e8e5
5dd12c17bf5037c7ac6a2ac73caf4d61443c4749
9d2bc5118f20f6f6defae075da17d34e1716d36d
e3385993b4133f88fd1b8e335438f5f2cd305555 (jogl)
25f248669f603c2bbd6ad97f31e0c72ce780f507</cf_scm_refs>
          <cf_workaround>---</cf_workaround>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>4596</commentid>
    <comment_count>0</comment_count>
    <who name="Sven Gothel">sgothel</who>
    <bug_when>2015-02-26 02:49:15 +0100</bug_when>
    <thetext></thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>4611</commentid>
    <comment_count>1</comment_count>
    <who name="Sven Gothel">sgothel</who>
    <bug_when>2015-03-05 02:42:51 +0100</bug_when>
    <thetext>- We shall be able to import &apos;most&apos; vanilla GL header,
  i.e. only change the typedef part using our GlueGen types

- Type Safety:
  - GlueGen shall detect &apos;#define&apos; and &apos;enum&apos; redefines 
    and throw an exception in this case.
    This helps detecting wrongly renamed GL extensions into core!

  - The same goes for function symbols, 
    i.e. their semantics have to be equal!
    This helps detecting wrongly renamed GL extensions into core!

  - Hence semantic equality shall be validated

- Track and simplify renamed &apos;symbol&apos;, i.e. use a common 
  sub-interface for all renamed symbols (ConstantDefinition, FunctionSymbol, ..).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>4612</commentid>
    <comment_count>2</comment_count>
    <who name="Sven Gothel">sgothel</who>
    <bug_when>2015-03-06 11:22:42 +0100</bug_when>
    <thetext>72d3635279ffc8ad88e47dff9bbe95d211226d11:
  - Enhance GlueGen Compiler: Minimal GL Header Changes _and_ Typesafety

ea6df88075c44f6b6317920119d6b33d5d97b362
  - Fix regression: Static C-Function call must use original API name

8eb9e27bccca4a0cd6a0b1b15bee76576ce030c3
  - Add ASTLocationTag, locating source of [semantic] errors while 
    parsing / analyzing

54dcf4271abf188585b248473cab11b0b4d93854
  - Refine Logging using &apos;LoggerIf&apos; - Replace System.err 
    w/ Logging where appropriate

4183867b055e99762d9b1a9163012657738be31a
  - Utilize AliasedSymbol where required in *Configuration; 
  - Clarify ProcAddressEmitter criteria

1df503b8f14b385b35c6b50a4ff7ff03d1c3134f
  - Fix ProcAddressEmitter.getFunctionPointerTypedefName() ; 
  - Fix JavaEmitter&apos;s Function/Struct Emission

5f66fafec303de7d7904a499fefb8e3d023b61ae
  - GlueGenException.toString(): Produce a &apos;gcc&apos; like/compatible error message

43f200428eb595665d6db6edbd5538413f5a977c
  - Fix regression on OpenSolaris/gcc: Redefine in test1.h (test case)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>4621</commentid>
    <comment_count>3</comment_count>
    <who name="Sven Gothel">sgothel</who>
    <bug_when>2015-03-09 10:33:28 +0100</bug_when>
    <thetext>eca019c Bug 1134 - Pass ASTLocationTag to all types, used for GlueGenException
b86c042 Bug 1134 - Handle Opaque fields in structs; Print struct field name in apidoc of getter/setter
d75bd39 Bug 1134 - Fix IntType: Add getCName(..) for proper C-type code; Fix its newCVVariant(..), don&apos;t pass given cv-attr as typedef
e2d5d6f Fix Type.getDebugString() comma separation
da909f8 Bug 1134 - Use ASTLocationTag in Logging (PCPP, Emitter); Refine ASTLocationTag log/exception formatting.
4573550 Bug 1134 - Logging&apos;s formatter now takes care of Type -&gt; getDebugString() when desired, not at &apos;log&apos; call
3b78715 Bug 1134 - Make ASTLocusTag&apos;s text optional
cf9f28c Bug 1134 - Fix IntType &apos;unsigned&apos;; Type: Use copy-ctor instead of Clonable, ..
9eb9403 Bug 1134 - Fix aliased typedef struct emission
414a014 Bug 1134 - Fix CMethodBindingEmitter return type &apos;_res&apos; qualifiers
10060b0 Bug 1134 - ProcAddressCMethodBindingEmitter: Use available &apos;ProcAddrTypedef&apos; for type validation w/ local generated variant (robustness)
90e53d0 Bug 1134 - Fix CMethodBindingEmitter return type &apos;_res&apos; qualifiers (part 2)
8efdf71 Bug 1134 - In case of &apos;undefined type&apos; throw a semantic GlueGenException instead of an NPE
5dd12c1 Bug 1134 - Add ASTLocusTagProvider for Define and fix newline in c-parser (Expose source location for log/error messages)
9d2bc51 Bug 1134 - Refine err/log message of &apos;previous definition is here&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>4622</commentid>
    <comment_count>4</comment_count>
    <who name="Sven Gothel">sgothel</who>
    <bug_when>2015-03-09 10:40:44 +0100</bug_when>
    <thetext>e3385993b4133f88fd1b8e335438f5f2cd305555

Use ASTLocationTag in Logging
    
Adapt to GlueGen commit da909f84dc8421052c92491baa7dd90e1c78dc8f</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>4645</commentid>
    <comment_count>5</comment_count>
    <who name="Sven Gothel">sgothel</who>
    <bug_when>2015-03-11 18:42:30 +0100</bug_when>
    <thetext>25f248669f603c2bbd6ad97f31e0c72ce780f507
LOG AliasedSymbol: Don&apos;t issue getAliasedString(), logger takes care of that, when it logs.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>