| Summary: | Enhance GlueGen Compiler: Minimal GL Header Changes _and_ Typesafety | ||
|---|---|---|---|
| Product: | [JogAmp] Gluegen | Reporter: | Sven Gothel <sgothel> |
| Component: | core | Assignee: | Sven Gothel <sgothel> |
| Status: | RESOLVED FIXED | ||
| Severity: | enhancement | ||
| Priority: | --- | ||
| Version: | 2.3.0 | ||
| Hardware: | All | ||
| OS: | all | ||
| Type: | --- | 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
|
| Workaround: | --- | ||
| Bug Depends on: | |||
| Bug Blocks: | 1135 | ||
|
Description
Sven Gothel
2015-02-26 02:49:15 CET
- We shall be able to import 'most' vanilla GL header,
i.e. only change the typedef part using our GlueGen types
- Type Safety:
- GlueGen shall detect '#define' and 'enum' 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 'symbol', i.e. use a common
sub-interface for all renamed symbols (ConstantDefinition, FunctionSymbol, ..).
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 'LoggerIf' - Replace System.err
w/ Logging where appropriate
4183867b055e99762d9b1a9163012657738be31a
- Utilize AliasedSymbol where required in *Configuration;
- Clarify ProcAddressEmitter criteria
1df503b8f14b385b35c6b50a4ff7ff03d1c3134f
- Fix ProcAddressEmitter.getFunctionPointerTypedefName() ;
- Fix JavaEmitter's Function/Struct Emission
5f66fafec303de7d7904a499fefb8e3d023b61ae
- GlueGenException.toString(): Produce a 'gcc' like/compatible error message
43f200428eb595665d6db6edbd5538413f5a977c
- Fix regression on OpenSolaris/gcc: Redefine in test1.h (test case)
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'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's formatter now takes care of Type -> getDebugString() when desired, not at 'log' call 3b78715 Bug 1134 - Make ASTLocusTag's text optional cf9f28c Bug 1134 - Fix IntType 'unsigned'; Type: Use copy-ctor instead of Clonable, .. 9eb9403 Bug 1134 - Fix aliased typedef struct emission 414a014 Bug 1134 - Fix CMethodBindingEmitter return type '_res' qualifiers 10060b0 Bug 1134 - ProcAddressCMethodBindingEmitter: Use available 'ProcAddrTypedef' for type validation w/ local generated variant (robustness) 90e53d0 Bug 1134 - Fix CMethodBindingEmitter return type '_res' qualifiers (part 2) 8efdf71 Bug 1134 - In case of 'undefined type' 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 'previous definition is here' e3385993b4133f88fd1b8e335438f5f2cd305555
Use ASTLocationTag in Logging
Adapt to GlueGen commit da909f84dc8421052c92491baa7dd90e1c78dc8f
25f248669f603c2bbd6ad97f31e0c72ce780f507 LOG AliasedSymbol: Don't issue getAliasedString(), logger takes care of that, when it logs. |