Opened 3 years ago

Last modified 3 years ago

#3907 accepted enhancement

instantiate header only classes

Reported by: fdupont Owned by: fdupont
Priority: low Milestone: Windows
Component: Unclassified Version: git
Keywords: Cc:
CVSS Scoring: Parent Tickets:
Sensitive: no Defect Severity: N/A
Sub-Project: DHCP Feature Depending on Ticket:
Estimated Difficulty: 0 Add Hours to Ticket: 0
Total Hours: 0 Internal?: no

Description

Header only classes as src/lib/util/buffer.h must be instantiated in visibility stuff but IMHO there are other benefits to get the corresponding code inside the library binary:

  • more explicit sharing
  • easier debug as there should be only one instance of the code.

Note the extern for template instantiation has even clearer benefit (it enforces sharing) but it is a c++11 feature.
To finish we have the .cc (trivial) files in the visibility branch so it could be done after the 0.9.2 release.

Subtickets

Change History (3)

comment:1 Changed 3 years ago by fdupont

  • Owner set to fdupont
  • Status changed from new to accepted

comment:2 Changed 3 years ago by hschempf

  • Milestone changed from Kea-proposed to Windows

comment:3 Changed 3 years ago by fdupont

I strongly disagree about the milestone. Please reconsider it.

Note: See TracTickets for help on using tickets.